对 VHost 配置中的 WebSockets 的 Apache ProxyPass 错误 500 进行故障排除

对 VHost 配置中的 WebSockets 的 Apache ProxyPass 错误 500 进行故障排除

我在 Apache VHost 配置中遇到问题,我需要一些帮助来理解和解决它。以下是详细信息:

我有一台 Linux 服务器,其规格如下:

Hostname: 3.10.0-1160.88.1.el7.x86_64 #1 SMP Tue Mar 7 15:41:52 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

Apache Version: Apache/2.4.6 (CentOS)
Apache Build Date: Apr 5, 2023 17:18:30


I've also installed V2Ray listening on port 8080

在我的 VHost 配置文件 (vhost.conf) 中,我对 SSL 进行了以下设置:

<IfModule mod_ssl.c>
<VirtualHost *:443>
    ServerName hostname
    DocumentRoot /home/wwww
    <Location "/server">
        ProxyPass wss://127.0.0.1:8080/server
        ProxyPassReverse wss://127.0.0.1:8080/server
    </Location>
    Include /etc/letsencrypt/options-ssl-apache.conf
    SSLCertificateFile /etc/letsencrypt/live/hostname/cert.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/hostname/privkey.pem
    SSLCertificateChainFile /etc/letsencrypt/live/hostname/chain.pem
</VirtualHost>
</IfModule>

<Location>我的问题与尝试设置 WebSocket 代理的块有关。使用时wss://,我遇到错误 500(内部服务器错误)。奇怪的是,在相同的 VHost 配置上,我没有遇到端口 80 的任何问题。我检查了/var/log/httpd/error_log,但没有关于该错误的有意义的信息。

我正在寻找有关导致 WebSocket 出现此 500 错误的原因(wss://)以及如何排除故障和解决此问题的指导。任何建议或见解都将不胜感激。

提前感谢您的帮助!

相关内容