提问者:小点点

端口80中的Apache请求在8080重定向到tomcat


我已经成功地将Apache超文本传输协议请求指向tomcat 8080。但问题是图像和css没有加载。它仍然在看端口80。应用程序托管在amazon ec2我的tomcat部署的url:

如果我键入www.abc.com它会成功重定向到我的应用程序并显示欢迎页面。但是图像不会显示。如果我在url中包含端口8080,则图像会显示。例如:

www.abc.com:8080/WebApplication/img/xy.jpg

server.xml
 <Connector executor="tomcatThreadPool"
               port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />


Config of httpd.conf in apache
<IfModule mod_proxy.c>
ProxyRequests Off
#<Proxy *>
#    Order deny,allow
#    Deny from all
#    Allow from .example.co
ProxyPass / http://www.sabc.com:8080/WebApplication1/
ProxyPass /WebApplication1/img www.abc.com:8080/WebApplication1/img
ProxyPass /WebApplication1/css www.abc.com:8080/WebApplication1/css


ProxyPassReverse /WebApplication1/css www.abc.com:8080/WebApplication1/css
ProxyPass /WebApplication1/img www.abc.com:8080/WebApplication1/img
ProxyPassReverse  / www.abc.com:8080/WebApplication1/
#</Proxy>

共1个答案

匿名用户

首先,如果您已经有以下代码,则不应该要求您提及ProxyPass设置。

ProxyPass         /   http://www.sabc.com:8080/WebApplication1/
ProxyPassReverse  /   http://www.sabc.com:8080/WebApplication1/

尽管如此,如果有任何要求特别提及它,似乎需要为ProxyPass Reverse编写的代码进行更正,如下所示。

ProxyPass /WebApplication1/img               http://www.sabc.com:8080/WebApplication1/img
ProxyPass /WebApplication1/css               http://www.sabc.com:8080/WebApplication1/css
ProxyPass***Reverse*** /WebApplication1/img  http://www.sabc.com:8080/WebApplication1/img
ProxyPassReverse /WebApplication1/css        http://www.sabc.com:8080/WebApplication1/css