我有一个tomcat应用程序。我也在使用apache服务器,并使用mod_jk将其连接到tomcat。在这里,我使用了重写模块来更改URL,但是当我的网站运行时,页面资源(css,js)无法正确加载。
我的tomcat应用程序名称Mahmudul
。我想使URL为www.mahmudul.com
,所以我配置了httpd.conf文件。这是我的配置。
<VirtualHost *:80>
ServerName www.mahmudul.com
RewriteEngine on
RewriteRule ^/(.*)$ /Mahmudul/$1 [l,PT]
JkMount /* tomcat1
</VirtualHost>
如果我将URL配置为从
www.mahmudul.com/Mahmudul
加载,则并非一切都能正常工作,因为资源位置为/assets/css/styles/
。但是我更改了上面的配置以使URL www.mahmudul.com
。但是现在资源/Mahmudul/assets/css/styles/
的位置和资源未加载。同样,当单击任何链接(例如“联系人”)时,链接显示“ / Mahmudul / contact”,并且会话ID随链接一起附加。我想省略/Mahmudul
。我怎样才能做到这一点? 最佳答案
我已经解决了这个问题。在这里,我不必重写URL。我使用了相同的虚拟主机配置,但没有RewriteEngine。我只需要配置tomcat server.xml并添加新的主机配置。这是配置-
<Host name="mahmudul.com" appBase="webapps" unpackWARs="true" autoDeploy="true">
<Alias>www.mahmudul.com</Alias>
<Context path="" docBase="Mahmudul-1.0-SNAPSHOT" debug="0" privileged="true" />
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log." suffix=".txt" pattern="%h %l %u %t "%r" %s %b" resolveHosts="false" />
</Host>
这是我的worker.properties
worker.list=tomcat1
worker.tomcat1.type=ajp13
worker.tomcat1.port=8009
worker.tomcat1.host=localhost
和我的apache httpd.conf虚拟主机配置
<VirtualHost *:80>
ServerName mahmudul.com
ServerAlias www.mahmudul.com
JkMount /* tomcat1
</VirtualHost>
希望对您有所帮助。谢谢。