我有一个包含多个 VHost 的 Apache 代理。其中一些是我之前的旧配置。长话短说,我删除了服务器上一些已过期的 .crt 文件,但忘记删除相关文件/etc/apache2/ssl/*.conf
,因此当 Apache 尝试轮换其日志时,它会失败。
在修复了这个问题之后,我开始502 Proxy Error
在导航到只有一个的VHosts
。其他的都起作用了。
这就是导致一切崩溃的原因。在其中一个文件中/etc/apache2/sites-enabled/*.conf
,有这样一行:
SSLProxyVerify none
SSLProxyCheckPeerCN off
SSLProxyCheckPeerName off
SSLProxyCheckPeerExpire off
#SSLProxyProtocol +TLSv1 <---- THIS BROKE IT
其余的都VHosts
在使用TLSv1.2
。我的问题是,为什么这只会导致一次中断而不是全部中断,尤其是当文件中VHost
甚至没有旧配置时?TLS
更新我将 Apache 的日志级别设置为debug
,它显示了错误,但没有告诉我哪个配置文件是罪魁祸首。幸运的是,我知道哪一个:
[Mon Aug 30 08:26:35.098657 2021] [ssl:info] [pid 10843] SSL Library Error: error:1409442E:SSL routines:ssl3_read_bytes:tlsv1 alert protocol version (SSL alert number 70)
[Mon Aug 30 08:26:35.098679 2021] [ssl:info] [pid 10843] [remote 192.168.66.120:8004] AH01998: Connection closed to child 0 with abortive shutdown (server www.example.com:443)
[Mon Aug 30 08:26:35.098715 2021] [ssl:info] [pid 10843] [remote 192.168.66.120:8004] AH01997: SSL handshake failed: sending 502