2017-04-19 135 views
0

我有一个tomcat应用程序。我也使用Apache服务器,并使用mod_jk将其连接到tomcat。在这里我使用重写模块来更改我的网址,但是当我的网站运行时,页面资源(css,js)加载不正确。使用mod_jk加载httpd和tomcat加载资源

我的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 /联系人”,并且会话ID也附加在链接上。我想省略/Mahmudul。我怎样才能做到这一点?

回答

0

我已经解决了这个问题。在这里,我不必重写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 &quot;%r&quot; %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> 

我希望它能帮助。谢谢。