実際、URLにポートがない場合は、デフォルトでポート80が使用されます。Apachehttpサーバーはこのポートで正常に実行されています。
Tomcatサーバーで実行されているgrailsアプリケーションでこれを実現するには、2つの異なる方法があります。
- Tomcatサーバーのポートを変更します(grailsを起動するときにDserver.portパラメーターを使用します)
grails -Dserver.port=80 run-app
- または、TomcatサーバーのプロキシとしてApachehttpサーバーを使用します。
http://www.unidata.ucar.edu/projects/THREDDS/tech/tds4.1/reference/TomcatBehindProxyServer.html
編集:
2番目にURLを使用します。質問が正しければ、デフォルトのビューとしてリストビューが必要です。これを実現するには、次のURLマッピングを使用します(ただし、テストはしていません)。
static mappings = {
"/$controller" {
controller = "controller"
action = "list"
}
}
編集2:
コントローラー名ではなく、アクションのみを表示する必要があります。
"/$action"
{
controller = "yourController"
action = "action"
}
このように、他のコントローラのすべてのインデックスアクションに注意してください。/ controllerは、ホームコントローラーに名前コントローラーを使用したアクションがあることを想定しているため、正しく機能しません。
編集3:URLにコントローラー名がなくてもアクセスできるようにするすべてのアクションのURLマッピングを定義することもできます。このように、アクションはホームコントローラーにある必要はありません。
元
"/myAction"
{
controller = "yourController"
action = "myAction"
}