인증하고 역방향 프록시를 수행하며 백엔드에 있는 2개의 웹앱에 대한 SSL 래퍼를 제공하는 natting fw에서 실행되는 아파치가 있습니다. 이는 요청의 최상위 디렉토리(예 https://example.com/app1/ <-> http://app1/app1/
: . (그림 1 참조)
요청에 설정된 임의의 헤더를 기반으로 요청을 다시 웹 서비스로 프록시하는 방법을 찾고 싶습니다. 예를 들어 web_service:coolwebservice 헤더가 설정된 경우 webservice:8000으로 다시 프록시됩니다. 이것이 가능합니까?
fig1 [아파치:example.com:443 / FW / NAT] | ┌------┬------┐ | | | VVV [app1:80 /app1/] [app2:8080 /app2/] [web_service:8000]
답변1
예, 이것은 mod_rewrite를 사용하면 절대적으로 가능합니다. 다음과 같이 하면 됩니다.
RewriteCond %{HTTP:web-service} coolwebservice
RewriteRule ^/(.*) http://web_service:8000/$1 [P,L]
이를 통해 %{HTTP:...}
임의의 헤더를 검사하고 이를 기반으로 결정을 내릴 수 있습니다.