2012-08-23 55 views
0

我有一個運行兩個虛擬主機的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,但它仍然將我重定向到不正確的主機。我比以前失去了更多。

回答

0

這種情況經常發生。 在grails中更改設置後,我錯誤地在tomcat上部署了我的webapp,因此沒有任何更改被傳播。該死。我忘了刪除webapps目錄中的舊目錄。該死。