Grails 3 - 配置嵌入式 Tomcat 绑定地址

Posted

技术标签:

【中文标题】Grails 3 - 配置嵌入式 Tomcat 绑定地址【英文标题】:Grails 3 - Configure embedded Tomcat bind address 【发布时间】:2016-06-19 14:03:36 【问题描述】:

我正在使用嵌入式 Tomcat servlet 容器将 Grails 3.1.3 应用程序作为独立 JAR 运行,并通过以下命令启动 WAR:

java -jar -server -Dserver.host=127.0.0.1 -Dserver.port=50000 -Dgrails.env=prod -Xmx768M myApp.war

通过使用server.port,我成功地将Tomcat侦听端口设置为50000。但是 server.host 似乎没有将 Tomcat 的绑定地址设置为 127.0.0.1,因为它在 Internet 上是可见的。

有没有办法成功设置绑定地址?

【问题讨论】:

【参考方案1】:

问题已回答here。只需使用属性server.address 设置绑定地址即可。

【讨论】:

【参考方案2】:

在 application.yml 中,我将我的 url 和端口设置为

    grails.serverURL: 'http://localhost:8080/appname'
    server:
      port: 8080
      contextPath: '/appname'

【讨论】:

感谢您的回答。我认为这行不通。 grails.serverURL 没有设置 Tomcat 的绑定地址。它用于链接生成。但是根据 Spring Boot 文档,我上面的答案解决了这个问题。

以上是关于Grails 3 - 配置嵌入式 Tomcat 绑定地址的主要内容,如果未能解决你的问题,请参考以下文章

对使用 java -jar 部署的 Grails 3 webapp (Springboot) 应用程序使用 Logback 访问

Grails 4、Ubuntu 20、嵌入式 Tomcat - 请求中没有多部分文件

Grails 3 Spring Security LDAP 插件和 Tomcat 8

Grails 4:不读取 Elastic Beanstalk 中的环境变量

使用“gradle test”测试 Grails 3 应用程序使用错误的环境配置

使用 Tomcat 部署 grails 应用程序的最佳实践