今天在配置apache和resin桥接情况下设置代理时出现了一个问题。我想在页面的请求中将/needtransfer/...的请求,转换为http://other.domain.com/needtransfer/...的请求。apache的配置文件是这样的:
LoadModule caucho_module modules/mod_caucho.so LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_connect_module modules/mod_proxy_connect.so LoadModule proxy_http_module modules/mod_proxy_http.so ... ProxyPass /needtransfer http://other.domain.com/needtransfer ProxyPassReverse /needtransfer http://other.domain.com/needtransfer ... #mod_caucho Resin Configuration ...
在实际请求时,http://localhost/needtransfer/...的链接每次都是被转发给resin,由于resin下没有/needtransfer/的路径,于是出现了404错误。改了N久之后忽然想到,和modules的加载顺序可有关系,于是改为:
LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_connect_module modules/mod_proxy_connect.so LoadModule proxy_http_module modules/mod_proxy_http.so ... ProxyPass /needtransfer http://other.domain.com/needtransfer ProxyPassReverse /needtransfer http://other.domain.com/needtransfer ... #mod_caucho Resin Configuration LoadModule caucho_module modules/mod_caucho.so ...
问题解决。