Apache Proxy Pass:连接被拒绝到 websocket 服务器

时间:2021-07-27 23:16:19

标签: amazon-web-services apache amazon-ec2 websocket proxypass

使用 Apache 2.4,我在 localhost 的 1234 端口上有一个 websocket 服务器,通过端口 443 上的虚拟主机访问。一切正常,这令人惊讶,因为我的错误日志充满了消息:

[Tue Jul 27 23:09:20.574164 2021] [proxy:error] [pid 3112:tid 140321405003520] (111)Connection refused: AH00957: ws: attempt to connect to 35.177.28.97:1234 (prsm.uk) failed
[Tue Jul 27 23:09:20.574208 2021] [proxy_http:error] [pid 3112:tid 140321405003520] [client 80.2.127.158:49843] AH01114: HTTP: failed to make connection to backend: prsm.uk

服务器是 AWS EC2 上的 Linux 2 实例。虚拟主机的 .conf 文件是:

<VirtualHost *:80>
        ServerName www.prsm.uk
        ServerAlias prsm.uk
    Redirect / https://www.prsm.uk/
</VirtualHost>
<VirtualHost *:443>
        ServerName www.prsm.uk
        ServerAlias prsm.uk
         DocumentRoot "/data/prsm"
        DirectoryIndex "index.html" "index.php" "index.htm"
        <Directory "/data/prsm">
                Options MultiViews FollowSymLinks
                AllowOverride  All
                Require all granted
        </Directory>

    SSLProxyEngine on
        ProxyPass /wss  ws://localhost:1234

        SSLEngine on
    SSLProtocol TLSv1.2
        SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5
        SSLCertificateFile "/etc/letsencrypt/live/www.prsm.uk/fullchain.pem"
        SSLCertificateKeyFile "/etc/letsencrypt/live/www.prsm.uk/privkey.pem"
        <FilesMatch "\.(cgi|shtml|phtml|php)$">
                SSLOptions +StdEnvVars
        </FilesMatch>
        BrowserMatch "MSIE [2-5]" \
                         nokeepalive ssl-unclean-shutdown \
                         downgrade-1.0 force-response-1.0

</VirtualHost>

AWS 安全组当前配置为允许所有向内访问端口 1234(以及端口 80 和 443)。

为什么我会收到这些错误消息,我应该怎么做才能摆脱它们?

(以防万一,在 AWS LInux 2 上禁用了 SeLinux,而且启用它似乎不受支持且不明智)。

0 个答案:

没有答案