使用Tomcat / Apache ProxyPass的Grails URL

时间:2010-03-15 00:52:33

标签: apache url tomcat grails proxypass

Grails倾向于写出使用其标签为/ appName / whatever的所有内容的URL。例如,如果我使用标签:

<g:javascript library="jquery"/>

生成的标签是

<script src="/appName/jquery/jquery.js"></script>

这会导致使用ProxyPass和Apache / Tomcat时出现问题。我的所有CSS,JS,图像和链接都以/ appName为前缀。

有没有办法解决这个问题,使用ProxyPass或者Grails可能不会将appName加到我所有网址的前面?

2 个答案:

答案 0 :(得分:2)

如果您的tomcat中没有其他应用程序作为默认值运行,或者您不关心替换它,则必须在部署之前将war文件重命名为ROOT.war。 (并删除目录ROOT,如果存在)

如果您有多个应用程序且只有一个tomcat服务器,则可以使用虚拟主机。每个应用程序一个虚拟主机。 (http://tomcat.apache.org/tomcat-6.0-doc/virtual-hosting-howto.html

如果选择虚拟主机方法,则在定义ProxyPass语句时必须使用de virtualhost域,并确保apache服务器正确解析虚拟主机域。 (如果没有,您可能需要编辑他的os主机文件)

对不起我的英语。

答案 1 :(得分:1)

这对我有用,您是尝试以domain.com/而不是domain.com/appName运行应用程序吗?

如果是这样,那么您可能需要在标记中指定 base 绝对参数。