Grails – productionモードでコンテキストパスを変更できない。

投稿者: Anonymous

Grailsでtestという名前のアプリケーションを作りました。
http://myapp.com/をコンテキストパスにしたいのですが、productionモードだとApacheの画面(Red Hat Enterprise Linux Test Page)が表示されてしまいます。

localではhttp://localhost:8080/でアプリケーションが動きます。

どうすれば、http://myapp.com/でTop画面を表示できるようにする事ができるのでしょうか?

設定は以下の通りです。

build.gradle(抜粋)

buildscript {
    dependencies {
      classpath 'org.grails:grails-gradle-plugin:2.2.0.RC1'
    }
  }
  grails{
    grailsVersion = '2.4.4'
  }
  dependencies {
      bootstrap "org.grails.plugins:tomcat:8.0.21"
      compile 'org.grails.plugins:scaffolding:2.1.2'
      compile 'org.grails.plugins:asset-pipeline:2.1.5'
      runtime ('org.grails.plugins:hibernate4:4.3.6.1') {
          exclude module: 'xml-apis'
      }
  }

Config.groovy(抜粋)

environments {
    development {
        grails.logging.jul.usebridge = true
    }
    production {
        grails.logging.jul.usebridge = false
        grails.serverURL = "http://myapp.com"
    }
}

application.properties(抜粋)

app.grails.version=2.4.4
app.name=test
app.context=/

http.config(抜粋、Apache2.4)

ServerName myapp.com:80
DocumentRoot "/usr/local/tomcat/webapps/test"
<Directory "/usr/local/tomcat/webapps/test">
    Options -Indexes +FollowSymLinks
    AllowOverride None
    Require all granted
</Directory>

Tomcatのバージョンは8.0.21

どうすれば、http://myapp.com/でTop画面を表示できるようにする事ができるのでしょうか?

解決

Apacheの設定が正しくありません。
mod_proxy_ajpなどを使ってApacheとTomcatを連携させる必要があります。

回答者: Anonymous

Leave a Reply

Your email address will not be published. Required fields are marked *