我们有一个Apache虚拟主机www.example.com现在我试图让www.example.com/mypath去加载页面
www.example1.com使用mod_poxy我有一个基地
ProxyPass /mypath http://www.example1.com ProxyPassReverse /mypath http://www.example1.com
但www.example1.com上的链接全部是<a href='/xxx/xx'>example link</a>
所以当他们回到www.example.com/mypath的时候www.example.com/xxx/xx我怎样才能让他们成为www.example.com/mypath/xxx/xx
干杯
这可以通过使用能够重写链接的mod_proxy_html来实现。 一般来说,如果您的网页使用相对path,这不会成为问题。
安装模块后,可以使用与此类似的configuration
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 LoadModule xml2enc_module modules/mod_xml2enc.so # Disable Proxy Requests since this is not a forward proxy ProxyRequests off ProxyPass /mypath/ http://www.example1.com/ ProxyHTMLURLMap http://www.example1.com /mypath <Location /mypath/> ProxyPassReverse / ProxyHTMLEnable On ProxyHTMLURLMap / /mypath/ # You cannot rewrite gzip compressed streams RequestHeader unset Accept-Encoding </Location>
你可以在这里和这里阅读更多关于mod_proxy_html的信息