我有一個運行兩個虛擬主機的tomcat 6安裝,以root身份擁有兩個應用程序。不要管那個。 這是一個非常基本設置:在Tomcat6上使用Grails與虛擬主機時重定向錯誤的主機
server.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://hostB/controller/action
時,它始終指向http://hostA/Engine/controller/action
。
起初我以爲這是Config.groovy和服務器URL的問題。我仔細檢查過,沒關係。我嘗試刪除配置選項,但仍然沒有喜悅。 hostA上的第二個應用程序正常工作。
我也經歷了代碼,以確保hostA沒有提到那裏,但沒有發現任何東西。
我迷路了,有什麼建議嗎?
編輯: 我試着再次設置grails.serverURL
指向正確的域,並在重定向中使用absolute:true
,但它仍然將我重定向到不正確的主機。我比以前失去了更多。