502:代理:傳遞請求正文失敗

502:代理:傳遞請求正文失敗

有時,當我透過 https 查看我的網站時,會收到以下錯誤(在 apache 的 error.log 中):

(502)Unknown error 502: proxy: pass request body failed to xxx.xxx.xxx.xxx:443

我不完全確定這是什麼以及為什麼會發生,它也不一致。

請求路徑為:

  • 瀏覽器
  • 代理伺服器(帶有 mod_proxy + mod_ssl 的 apache)
  • 負載平衡器(AWS)
  • Web 伺服器(帶有 mod_ssl 的 apache)

代理伺服器上的配置如下:

<VirtualHost *:443>
    ProxyRequests Off
    ProxyVia On

    ServerName                      www.xxx.co.uk
    ServerAlias                     xxx.co.uk

    <Directory proxy:*>
        Order deny,allow
        Allow from all
    </Directory>

    <Proxy *>
        AddDefaultCharset off
        Order deny,allow
        Allow from all
    </Proxy>

    ProxyPass / balancer://cluster:443/ lbmethod=byrequests
    ProxyPassReverse / balancer://cluster:443/
    ProxyPreserveHost off

    SSLProxyEngine On
    SSLEngine on
    SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
    SSLCertificateFile /var/www/vhosts/xxx/ssl/www.xxx.co.uk.cert
    SSLCertificateKeyFile /var/www/vhosts/xxx/ssl/www.xxx.co.uk.key

    <Proxy balancer://cluster>
        BalancerMember https://xxx.eu-west-1.elb.amazonaws.com
    </Proxy>

</VirtualHost>

知道可能是什麼問題嗎?

答案1

就我而言,問題是後端(stunnel)不接受 Apache 發送的 SSL 版本。我在 syslog 中發現 stunnel 正在報告“routines:SSL3_GET_RECORD:wrong version number”,然後我在中找到了解決方案https://serverfault.com/a/303851/69972

相關內容