我在80端口上使用apache,轉發端口8080上的tomcat6上的所有請求。在我的應用程序中,我使用的是struts2框架。在tomcat中,我使用ROOT應用程序重定向到我的應用程序「MyApp」。Apache + Tomcat6 + Struts2重定向問題
當我走在我的網站上的鏈接我看到好的網址,像www.mysite.com/order
但是當支柱重定向我到任何地方的URL採取像www.mysite.com:8080/MyApp/形式訂單
如何使這個網址simmilar?
我在80端口上使用apache,轉發端口8080上的tomcat6上的所有請求。在我的應用程序中,我使用的是struts2框架。在tomcat中,我使用ROOT應用程序重定向到我的應用程序「MyApp」。Apache + Tomcat6 + Struts2重定向問題
當我走在我的網站上的鏈接我看到好的網址,像www.mysite.com/order
但是當支柱重定向我到任何地方的URL採取像www.mysite.com:8080/MyApp/形式訂單
如何使這個網址simmilar?
我在Apache和Tomcat之間使用AJP connector。下面是我在我的配置文件使用一個片段:
Apache的配置($ APACHE_DIR /網站可用/默認)的部分:
NameVirtualHost *:80
NameVirtualHost *:443
LoadModule jk_module /usr/lib/apache2/modules/mod_jk.so
JkWorkersFile /etc/apache2/workers.conf
JkLogFile /var/log/apache2/mod_jk.log
JkLogLevel info
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
<VirtualHost *:80>
ServerName brasee.com
ServerAlias www.brasee.com
JkMount /* ajp13secured
</VirtualHost>
Tomcat的配置(CONF/Server的一部分。 xml):
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
<!-- Define an AJP 1.3 Connector on port 8008 -->
<Connector port="8008" protocol="AJP/1.3" redirectPort="8080" />
你是如何做轉發?正確的方法是使用mod_proxy將Apache設置爲反向代理。有關說明,請參閱here。這樣Struts重定向就沒有問題了。