사이트를 리버스 프록시 해야하는 Apache 웹 서버가 있습니다. 그래서 example.com/test/
나 example.com/test
같은 다른 웹 서버에서 풀. 다음과 같이 슬래시가없는 것에 대한 역방향 프록시를 설정했습니다.
ProxyPass /test http://othersite.com/test
ProxyPassReverse /test http://othersite.com/test
그러나 후행 슬래시는 작동하지 않습니다.
어떤 아이디어? 나는에서 리디렉션을 시도 /test/
하는 /test
행운과 함께.
감사.
답변
URL을 다시 쓰려고 했습니까?
RewriteEngine on
RewriteRule ^/test$ /test/ [R]
ProxyRequests Off
ProxyPreserveHost On
ProxyPass /test/ http://othersite.com/test/
ProxyPassReverse /test/ http://othersite.com/test/
답변
슬래시와 함께 작동하지 않는다는 것은 무엇을 의미합니까? 잘못된 위치로 리디렉션됩니까? 404 오류가 발생합니까? 이것이 내가 리버스 프록시를 설정하고 다른 세계에서 소스를 숨기는 데 사용한 것입니다.
ProxyRequests off
<Location /guides>
ProxyPass http://blog.domain.com
ProxyPassReverse http://blog.domain.com
ProxyPassReverse /
ProxyHTMLEnable On
ProxyHTMLURLMap / /guides
ProxyHTMLURLMap http://blogs.domain.com /guides
RequestHeader unset Accept-Encoding
RequestHeader set MySpecialHeader secretkey
#LogLevel proxy:debug
</Location>
이를 사용하여 프록시를 테스트 할 수 있습니다.
$ curl -I http://localhost:81/guides/top5
HTTP/1.1 301 Moved Permanently
Location: http://localhost:81/guides/top5/