0

我有一个运行两个虚拟主机的 tomcat 6 安装,有两个应用程序作为 root。不要管那个。这是一个非常基本的设置:

服务器.xml

    <Engine name="Catalina" defaultHost="hostA">
      <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
             resourceName="UserDatabase"/>
      <Host name="hostA"  appBase="webapps"
            unpackWARs="true" autoDeploy="true"
            xmlValidation="false" xmlNamespaceAware="false">
  <Context path="" docBase="Invoices-0.1.war" reloadable="true" useHttpOnly="true"/>
      </Host>
      <Host name="hostB" appBase="webappsTwo" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
        <Context path="" docBase="Engine-0.1.war" reloadable="true" useHttpOnly="true"/>
      </Host>
    </Engine>

很难让它比这更简单。

我遇到的问题是,每当在 hostB 上的引擎应用程序上执行重定向时,它都会发送错误的 URL。它总是指向http://hostA/Engine/controller/action它应该指向的时间http://hostB/controller/action

起初我以为是 Config.groovy 和服务器 URL 的问题。我仔细检查过,没问题。我试过删除配置选项,但仍然没有乐趣。hostA 上的第二个应用程序运行良好。

我还检查了代码以确保此处未提及 hostA,但一无所获。

我现在迷路了,有什么建议吗?

编辑:我尝试grails.serverURL再次设置指向正确的域并absolute:true在重定向中使用,但它仍然将我重定向到不正确的主机。我比以前更迷失了。

4

1 回答 1

0

好吧,这经常发生。更改 grails 中的设置后,我在 tomcat 上错误地部署了我的 webapp,因此没有传播任何更改。该死。我忘了删除 webapps 目录中的旧目录。该死。

于 2012-08-24T06:49:34.350 回答