0

我在 CentOS 6 上安装了 Tomcat 7,一切运行良好,作为服务运行,可以启动和停止它,日志文件看起来很好。

但是,它没有响应我的 webapp 地址,所以我有问题......

我可以在外部访问tomcat:www.my-domain.us:8080(标准欢迎Apache Tomcat 7页面),但是当我尝试在名为cpn的应用程序下访问它时,我不能。我在尝试:

www.my-domain.us:8080/cpn
www.my-domain.us/cpn
www.my-domain.us:8080/cpn/cpn

cpn.war 文件被 Tomcat 在 webapps 中正确分解,即我有一个

 .../webapps/cpn/* directory

在 application.properties 中,app.name=cpn。

另外,在 Config.groovy 我有:

 grails.serverURL = "http://www.my-domain.us"

我究竟做错了什么?

4

1 回答 1

1

如果它根本没有响应,那么它可能没有成功启动,请检查日志文件中的“由于先前的错误导致启动失败”。一个常见的问题可能是如果 Grails 试图创建其默认stacktrace.log日志文件,但“当前目录”是 Tomcat 进程的 UID 不可写的。您可以通过添加来消除这种可能性

'null' name:'stacktrace'

appenderslog4j关闭中的块以完全Config.groovy关闭stacktrace.log

此外,如果您的 Tomcat 是可见的,www.my-domain.us:8080那么您grails.serverURL应该是http://www.my-domain.us:8080/cpn,即它应该包括webapp 上下文路径以及主机名和端口号,并且不应斜杠结尾。

如果您希望将应用程序部署在根上下文 ( http://www.my-domain.us:8080/) 中,那么您应该命名它ROOT.war而不是cpn.war设置grails.serverURL="http://www.my-domain.us:8080"

于 2013-10-06T21:26:57.233 回答