2009-10-15 29 views
5

Próbuję skonfigurować mój apache (wersja 2.2.3) do pracy jako serwer proxy odwrotnego. I skonfigurowany apache na serwerze publicznym, jak to jest opisane w http://www.askapache.com/htaccess/reverse-proxy-apache.htmlSerwer proxy odwrotnego Apache 2.2 nie działa

LoadModule proxy_module  modules/mod_proxy.so 
LoadModule proxy_http_module modules/mod_proxy_http.so 
LoadModule headers_module modules/mod_headers.so 
LoadFile /usr/lib/libxml2.so 
LoadModule proxy_html_module modules/mod_proxy_html.so 

ProxyRequests off 
ProxyPass /app1/ http://internal1.example.com/page1/ 
ProxyPassReverse /app1/ http://internal1.example.com/page1/ 
ProxyHTMLURLMap http://internal1.example.com/page1/ /app1/ 

 

internal1 jest inny serwer w sieci lokalnej.

Strona główna (www.example.com/app1/) jest wyświetlana poprawnie, ale problem występuje, gdy mój wewnętrzny serwer wykonuje przekierowanie. W takim przypadku moja przeglądarka (Firefox 3.5.3 lub Internet Explorer 7) wyszukuje adres w sieci lokalnej (internal1.example.com/page1/). Wydaje mi się, że dyrektywa ProxyPassReverse jest ignorowana przez Apache.

+0

co się stanie, gdy opuścisz "page1 /" z ProxyPassReverse? (ProxyPassReverse/app1/http &58; //internal1.example.com/) –

+0

Dzięki za odpowiedź Lance, ale to nie pomogło. Moja przeglądarka wciąż próbuje wyszukać adres w sieci lokalnej. –

Odpowiedz

4

Tuż przed ProxyPass dodać ten parametr ProxyPreserveHost On

To zachowanie gospodarza. (http://httpd.apache.org/docs/2.2/mod/mod_proxy.html#proxypreservehost)

Powiązane problemy