使用HTTPS无法正常工作的Apache反向代理到node.js应用程序

时间:2017-12-11 15:24:46

标签: node.js apache https

我目前在我的网站的不同子域上运行了许多网络应用,并设法使用Let的加密和Certbot设置HTTPS没问题。我的服务器上运行了一个Node应用程序(http://localhost:3001),我的所有Web应用程序都连接到该应用程序。我已经为我的Node.js应用程序设置了一个子域名,并为其获取了SSL证书。

在这个子域的VirtualHost条目中,我使用ProxyPass指向我的Node应用程序,我的配置如下所示:

<VirtualHost MY_IP_ADDRESS:443> ServerName server.myserver.com ProxyPass / http://MY_IP_ADDRESS:3001/ ProxyPassReverse / http://MY_IP_ADDRESS:3001/ SSLCertificateFile /etc/letsencrypt/live/server.myserver.com/cert.pem SSLCertificateKeyFile /etc/letsencrypt/live/server.myserver.com/privkey.pem Include /etc/letsencrypt/options-ssl-apache.conf SSLCertificateChainFile /etc/letsencrypt/live/server.myserver.com/chain.pem </VirtualHost>

我面临的问题是,当我尝试访问https://server.myserver.com时,浏览器会通知我连接不安全(因此,现在我访问服务器的任何其他应用都是如此。 myserver.com)。

说到服务器配置,我的知识非常有限,所以我不知道问题是什么。这是一个Apache问题还是我的Node应用程序需要使用HTTPS(我的研究到目前为止建议不要......)?

编辑:我在CentOS 7上运行Apache 2. Node应用程序是运行HTTP服务器的快速应用程序。 Firefox通知我安全证书不受信任,因为它是自签名的。我已经尝试更新它,但问题仍然存在。

1 个答案:

答案 0 :(得分:1)

固定!

结果显示子域“server.myserver.com”是问题所在。那是我服务器的主机名,所以我猜有冲突。