我的Tomcat在Apache服务器后面有问题。我设置Apache用作AJP代理,它似乎工作,如果我在apache服务器上打开浏览器,我从Tomcat服务器获取输出。我的请求URI有问题。我在程序中使用它,遗憾的是它没有给我正确的URI:
当我访问此页面时:
http://<apache-server>/test
该行
logger.entry(request.getRequestURL().toString() + " " + request.getRequestURI().toString());
在日志中返回:
http://<apache-server>/app/test /app/test
而不是我需要的东西:
http://<apache-server>/test /test
apache-server上的配置如下:
<VirtualHost *:80>
ProxyRequests off
ProxyPreserveHost on
ProxyPass / ajp://<tomcat-server>:8009/pps/
ProxyPassReverse / ajp:/<tomcat-server>:8009/app/
</VirtualHost>
tomcat服务器在server.xml中有这个:
<Connector port="8009"
enableLookups="false"
redirectPort="8443"
protocol="AJP/1.3" />
我发现页面建议在tomcat中将应用程序部署为ROOT,但这看起来很脏......