首先,我不是这个问题的Apache专家或Apache初学者。我有一个侦听服务器,侦听端口443。我将其托管在运行Centos7的VPS上,该托管了大约40个其他网站,据我所知,它们使用Apache进行服务器(我没有真正配置它,我使用了cPanel和WHM)。
现在,由于我知道Apache正在监听端口443,以便为网站提供服务,所以我想知道如何将Apache与Express服务器结合(如果有办法的话)。
我知道我可以更改快速应用程序的端口,但是该端口将显示在我的应用程序的地址栏上,我不希望这样做。
由于我对Apache的了解有限,因此我真的不知道该尝试什么。如果您需要它们,我们将乐意提供更多详细信息。
非常感谢!
编辑:
我尝试编辑/etc/apache2/conf/httpd.conf
下的默认httpd.conf文件。
这就是我所做的:
<VirtualHost MY-IP:443>
ServerName <mydomain.com>
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
ProxyRequests Off
<Proxy *>
Require all granted
</Proxy>
ProxyPass / <mydomain:8443.com>
ProxyPassReverse / <mydomain:8443.com>
<Location />
Require all granted
</Location>
SSLEngine On
SSLCertificateFile /var/cpanel/ssl/apache_tls/leadu.co.il/combined
</VirtualHost>
我从this post中获取了配置。
使用此配置,当我尝试访问域时,出现内部错误500。
答案 0 :(得分:0)
在您的apache配置文件中,您应该添加以下内容:
如果要从子文件夹(https://yourwebsite/express-app/)投放应用程序,请执行以下操作:
ProxyPass /express-app/ http://localhost:3000/
ProxyPassReverse /express-app/ http://localhost:3000/
如果您想从根目录(https://yourwebsite)服务您的应用程序:
ProxyPass / http://localhost:3000/
ProxyPassReverse / http://localhost:3000/
我假设您的应用程序在端口3000上运行。否则请进行更改。