Apache 2.2 反向代理不工作
我正在尝试将我的 apache (版本 2.2.3)设置为反向代理。我按照 http://www.askapache.com/htaccess/reverse-proxy-apache.html
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 是本地网络中的其他服务器。
主页(www.example.com/app1/)显示正确,但当我的内部服务器进行重定向时出现问题。在本例中,我的浏览器(Firefox 3.5.3 或 Internet Explorer 7)在本地网络中搜索地址 (internal1.example.com/page1/)。在我看来 ProxyPassReverse 指令被 apache 忽略了。
I am trying to set up my apache (version 2.2.3) to work as reverse proxy. I configured apache on public server as it is described at http://www.askapache.com/htaccess/reverse-proxy-apache.html
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 is other server in local network.
Home page (www.example.com/app1/) is displayed correctly, but the problem occures when my internal server does redirection. In this case my browser (Firefox 3.5.3 or Internet Explorer 7) searches for address in local network (internal1.example.com/page1/). It seems for me that ProxyPassReverse directive is ignored by apache.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
在
ProxyPass
之前添加此参数ProxyPreserveHost On
这将保留主机。 (http://httpd.apache.org/docs/2.2/mod/mod_proxy.html#proxypreservehost)
Just before
ProxyPass
add this parameterProxyPreserveHost On
This will preserve host. (http://httpd.apache.org/docs/2.2/mod/mod_proxy.html#proxypreservehost)