Url Mapping,Url重定向/重写

时间:2012-04-05 13:54:38

标签: url grails redirect url-rewriting url-mapping

我想重定向我的' /' uri给定控制器的动作。我曾经通过UrlMappings.groovy中的以下代码执行此操作:

"/"(action: "highlights", controller: "project")

但是,这不会重写浏览器中的url。它会重定向到正确的控制器操作,但浏览器的导航网址仍在myProject/。我希望它更新为"更正" uri以便重新加载等使用"正确" URI。

我试过了:

"/"(uri: "/project/highlights")

但我得到状态404回复。

关于我应该如何进行的任何建议?

2 个答案:

答案 0 :(得分:3)

UrlMappings仅适用于如何将网址映射到controller.action。它不会做任何重定向。 如果你想做url重定向,你可能需要在你的应用服务器前面设置一个像apache这样的http服务器,或者更简单的方法就是设置一个controller.action来手动重定向。

"/"(action: "redirect", controller: "project")

project控制器和redirect操作中,只需将用户重定向到您的highlights操作。

答案 1 :(得分:1)

您的应用程序已部署到myProject/上下文。因此,您的应用程序的根("/")为myProject/。您要做的是将应用程序部署到服务器根上下文。您可以通过在Config.groovy中设置grails.app.context = “/”来完成此操作。