我正在尝试缩短URL以访问我的grails应用程序。目前我能找到的最短的是
http://myserver:8080/helloWorld/helloWorld/
HelloWorld是控制器名称和应用程序名称。我能以某种方式把它缩短吗?这是它唯一的
http://myserver:8080/helloWorld/
我已将URL映射设置为
class UrlMappings {
static mappings = {
"/$controller/$action?/$id?"{
constraints {
// apply constraints here
}
}
"/"(view:"/index")
"500"(view:'/error')
}
}
您可以通过更改使HelloWorldController
成为默认URL
"/"(view:"/index")
至
"/"(controller: 'helloWorld')
这使用该控制器中的默认操作(可能是index()
);如果你想采取不同的行动,可以这样做:
"/"(controller: 'helloWorld', action: 'theOtherName')
如果只有一个控制器,则不需要在URL中包含它。您可以使用以下映射:
static mappings = {
"/$action?/$id?"(controller:'helloWorld')
"500"(view:'/error')
}
在这种情况下,http://myserver:8080/helloWorld/
将转到HelloWorldController.index()
,而不是提供index.gsp
视图。
前导helloWorld
也是可选的。将这些行添加到Config.groovy
以使用根上下文:
grails.app.context = "/"
grails.serverURL = "http://myserver:8080"
将这两者结合起来将允许您的应用程序通过http://myserver:8080/
进行访问。