使用嵌入式tomcat在Spring Boot App中设置域名

时间:2017-09-25 06:15:28

标签: java spring-boot configuration

我正在使用嵌入式tomcat在spring boot中开发一个应用程序。在我的本地运行端口8080,我可以给网址http://locahost:8080。如何将此更改为我的域名?像www.mydomain.com一样,它应该与localhost类似。如何配置?我使用嵌入式tomacat而不是外部安装的tomcat服务器。

3 个答案:

答案 0 :(得分:2)

首先,您需要注册域名。

然后,您需要拥有一台机器内部或云端,其公共IP地址映射到您注册的域,并且打开了正确的端口(80)。

然后,您需要启动Spring启动应用程序以在端口80而不是8080上运行。您可以使用CLI参数--server.port=80或在server.port=80文件中添加application.properties或{{application.yaml来执行此操作。 1}}文件。

答案 1 :(得分:1)

如果要将此春季启动应用程序部署为服务,而不是在已安装Apache Web Server的服务器上运行它,则可以手动设置端口80,该端口用于 HTTP 请求。 443已加密,因此 HTTPS 。您可以在服务器的防火墙上设置这些设置。

但是,如果这个Spring启动应用恰好是API之类的东西,那么它只是您要从服务器上的网站(在Apache Web之类的网站上运行)访问的端点服务器),则需要设置反向代理,否则它们都将尝试使用端口80:

https://medium.com/@codebyamir/using-apache-as-a-reverse-proxy-for-spring-boot-embedded-tomcat-f704da73e7c8

因此,您应该在Spring应用程序(运行嵌入式tomcat服务器)上将端口保留为8080,而Apache Web Server应该使用端口80来表示您的网站,网址为www.mydomain.com。

因此,代理会将传入的HTTP请求重定向到端口8080处的Tomcat服务,因此将通过www.mydomain.com/api-end-point-here

触发端点。

答案 2 :(得分:0)

您不必在应用程序的任何位置指定域名。

在SpringBoot项目中打开application.properties文件(在src/main/resources下)

使用

配置要运行应用程序的端口
server.port = XXXX

其中XXXX是端口号。(如果您不想在访问应用程序时提供端口,则为80)

需要完成的唯一额外配置是更新DNS以将mydomain.com指向您计算机的IP地址。目前,由于您使用的是本地计算机,因此可以通过编辑主机文件(C:\Windows\System32\drivers\etc)来测试重定向是否有效。 保持这种映射。

注意:只有当您从计算机访问域时,才能进行此编辑。