Apache의 프록시 기능을 사용하여 특정 경로 만 Tomcat에 연결 (AJP 연결)
전제
/hello
) 만 Tomcat과 함께 작동하며 다른 경로 (HTML, CSS, JavaScript 등의 정적 콘텐츠)에 대한 액세스는 Apache 문서 루트의 파일에 응답 /app
) Apache 설정
Apache에 다음 설정을 추가합니다.
# コメントアウトされている場合はコメントを除去
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
# ...
# リバースプロキシの設定
ProxyRequests Off
ProxyPass /hello ajp://ap:8009/app/hello
# レスポンスヘッダー値からコンテキストパスを除去
ProxyPassReverse / /app/
# クッキーパスの書き換え
ProxyPassReverseCookiePath /app /
검증 앱
# コメントアウトされている場合はコメントを除去
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
# ...
# リバースプロキシの設定
ProxyRequests Off
ProxyPass /hello ajp://ap:8009/app/hello
# レスポンスヘッダー値からコンテキストパスを除去
ProxyPassReverse / /app/
# クッキーパスの書き換え
ProxyPassReverseCookiePath /app /
백엔드 앱을 Spring Boot(임베디드 Tomcat)로 만들고 있는 것에 특히 의미는 없다. 단순히 Tomcat 설치하고 ... 설정 추가하고 ... 등이 번거로웠을뿐. 실제···조사한 내용을 반영하게 되는 실어플리케이션은···Spring Boot 어플리가 아니다(라든지 Spring도 사용하고 있지 않다)w
따라서 검증 어플리케이션에서는 다음 동작을 검증했습니다.
Apache 관리 리소스에 액세스
단순히 Apache 문서 루트 내에서 관리하는 리소스에 액세스해 보겠습니다.
Tomcat 관리 리소스에 액세스
Apache를 통해 Tomcat에서 관리하는 리소스에 액세스해보십시오. 역방향 프록시를 확인하기 위해 의도적으로 리디렉션되었습니다. 또한 Spring의 플래시 스코프를 사용하여 세션(=쿠키) 연계의 검증도 실시하고 있다.
Tomcat에서 Apache 관리 리소스로 리디렉션
만약을 위해・・・실앱의 에러 패턴도 확인해 둔다.
보충
리버스 프록시의 설정은 헤더 값의 재기록은 실시하지만, 응답 BODY내에 있는 URL의 재기입은 행해지지 않는다.
응답 BODY에있는 컨텍스트 경로를 제거하는 경우 ...
등을 사용할 필요가 있지만, 이번에는 미 검증.
Reference
이 문제에 관하여(Apache의 프록시 기능을 사용하여 특정 경로 만 Tomcat에 연결 (AJP 연결)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/kazuki43zoo/items/62e572dd0c09f521d7a2텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)