相對路徑我有一個可以訪問直接作爲http://host.foo.loc:8080/foo/或通過安全反向代理http://www.company.com/apps/foo/獲取Grails的產生在其相對URL
默認情況下,Grails將產生相對路徑相對URL的Web應用程序,例如:
<g:form action="bar">
會產生:
<form action="/foo/bar" method="post" >
這將是本地確定的,但反向代理將ñ OT接受http://www.company.com/foo/bar(它缺少/應用/)
如果我做的:
<g:form action="bar" base=".">
它的罰款。但我並不想在每一個生成鏈接的標籤上指定它。
處理此問題的最佳方法是讓Grails在其相對URL中生成相對路徑。或者,我可以將全球「baseUrl」設置爲「。」。但我也不知道該怎麼做。
有什麼想法?
實際上,將「base」設置爲「。」。不起作用。第一頁「/ foo/controller/action」會生成鏈接爲「./controller/nextaction」,瀏覽器會將其轉換爲「/ foo/controller/controller/action」=> 404。我想這就是爲什麼他們'重新使用絕對路徑:它們不是路徑。
我已經得出同樣的結論。我強迫這些URL是完全絕對的,以便我可以過濾它們,但是有很多地方可能隱藏相對URL,所以這不值得花費精力。我正在切換內部應用程序上下文以匹配外部應用程序上下文,並調整需要調整的內容。 – 2012-08-02 14:00:50