【发布时间】:2015-09-18 12:14:32
【问题描述】:
我在同一台服务器上使用nodejs、socket.io 和 apache。 Apache 将请求从端口 80 重定向到 443,然后使用 SSLProxyEngine 间接重定向到端口 3000 上的 SSL-NodeJS 服务器 - 工作正常,
问题:
在某些地区,只允许使用 80 和 443 端口,不允许使用 3000 端口。
当我改变时:
io.connect('https://domain.com:3000', { path: '/socket.io' });
到这里:
io.connect('https://domain.com', { path: '/socket.io' });
io.connect('https://domain.com:443', { path: '/socket.io' });
// whatever ...
服务器无法访问 (net::ERR_CONNECTION_TIMED_OUT)。
我尝试将端口设置为 FTP (21) 等公共端口,但浏览器表示不允许使用此端口。
你有什么想法吗?
这里有一些文件:
Apache 虚拟主机:
<VirtualHost *:443>
ServerName domain.com
SSLProxyEngine On
RequestHeader set Front-End-Https "On"
ProxyPass / https://domain.com:3000/ retry=1 acquire=3000 timeout=600 Keepalive=On
ProxyPassReverse / https://domain.com:3000/
// localhost not working
SSLEngine on
SSLCertificateKeyFile ...
SSLCertificateFile ...
SSLCertificateChainFile ...
</VirtualHost>
(我用 domain.com 替换了我的域)
【问题讨论】:
-
您找到解决方案了吗?
标签: node.js apache sockets proxy