我正在嘗試將Grails 2.2.3
項目部署到生產中,並且存在URL問題。 我在Apache中設置了反向代理,並且有http://example.com - 例如。以下Grails:如何從生產網址中刪除AppName
grails.serverURL = "http://example.com/"
,並在application.properties
設置:在Config.groovy
我設置以下屬性
app.context=/
但是我所有的資源和鏈接的總參考
http://example.com/AppName/...
如何我是否從資源和li中刪除應用程序名稱(「AppName」)? nks參考?資源
例如:環境
<r:require modules="bootstrap"/>
<g:javascript library="jquery"/>
例Config.groovy中:
environments {
development {
grails.logging.jul.usebridge = true
}
production {
grails.logging.jul.usebridge = false
grails.serverURL = "http://example.com/"
grails.app.context = "/"
}
}
我覺得Grails應用程序必須具備某種屬性,可以設置!?否則,它似乎是一個痛苦的脖子。
請幫忙! P:如果我直接訪問任何資源(手動刪除URL中的AppName),我會得到正確的東西,如css,js和image。
更新: 我設置以下的application.properties:
app.context=/
serverURL=http://example.com/
開創了Grails的絕對URL:
<g:createLink controller="Sample" absolute="true"/>
並創建正確的URL!然而,資源使用相對路徑,並以AppName /開頭......這似乎是一個詛咒,我無法擺脫該AppName。
更新: 如果我運行prod run-app
然後所有URL出來正常,但我部署到Tomcat 7的那一刻,AppName的出現在網址一次。
應該是'grails.app.context ='/''。請參閱http://stackoverflow.com/questions/22539389/change-the-context-for-your-application – dmahapatro
你如何生成你的鏈接? – saw303
您是否在'Config.groovy'中爲'prod環境設置了'grails.serverURL'屬性? – emilan