在同一个服务器和端口上使用Spring Boot和Apache2

4

我正在寻找一种解决方案,使得Apache2和Spring Boot应用程序可以在同一个端口和服务器上运行。启动应用程序是通过内部Tomcat服务器实现的。 Apache(WordPress)应该在端口443或80上工作,并且主URL应为:https://domian.dd/blog。其余的URL应由Spring Boot处理。

第一个问题是我无法在同一端口上打开两个应用程序。 第二个问题是Spring Boot有配置将端口80转发到443。

谢谢。


确实,您不能在同一端口上有两个进程监听。您需要将其中一个配置为前端服务器,它将请求转发到另一个在另一个端口或文件系统套接字上监听的服务器。您还可以使用纯前端服务器,例如负载均衡器,并在其后运行_两个_应用程序服务器。如何为此任务配置Apache HTTP服务器已经有很好的文档记录,请查看其代理模块的文档。 - arkascha
1个回答

1

在同一台机器上不能在相同的端口上运行两个应用程序,但是您可以通过以下方式实现您想要的效果。

  1. 使用路径为https://localhost:8443/myapp的方式运行您的Spring Boot应用程序

  2. 运行Apache并安装SSL

  3. 在ssl.conf中进行以下设置,将您的应用程序流量转发到Spring Boot应用程序

    SSLProxyEngine on
    SSLProxyVerify none
    SSLProxyCheckPeerCN off
    SSLProxyCheckPeerName off
    SSLProxyCheckPeerExpire off
    ProxyRequests Off
    ProxyPass /myapp https://localhost:8443/myapp
    ProxyPassReverse /myapp https://localhost:8443/myapp
    
  4. 如果/var/www/html是根文件夹,则将您的博客站点放置在Apache根文件夹/blog下,即/var/www/html/blog


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接