2

我在托管我的服务器的 nginx 上的 safari 遇到了一个非常奇怪的问题。ssl 握手失败并弹出服务器证书警告,我在 nginx 调试日志中得到了这个

nginx logs
    2013/11/01 23:27:59 [debug] 16494#0: *240 http recv(): 1
    2013/11/01 23:27:59 [debug] 16494#0: *240 https ssl handshake: 0x16
    2013/11/01 23:27:59 [debug] 16494#0: *240 SSL server name: "www.unitedwifi.com"
    2013/11/01 23:27:59 [debug] 16494#0: *240 SSL_do_handshake: -1
    2013/11/01 23:27:59 [debug] 16494#0: *240 SSL_get_error: 2
    2013/11/01 23:27:59 [debug] 16494#0: *240 reusable connection: 0
    2013/11/01 23:27:59 [debug] 16494#0: *240 SSL handshake handler: 0
    2013/11/01 23:27:59 [debug] 16494#0: *240 SSL_do_handshake: 1
    2013/11/01 23:27:59 [debug] 16494#0: *240 SSL: TLSv1, cipher: "ECDHE-RSA-AES128-SHA SSLv3 Kx=ECDH Au=RSA Enc=AES(128) Mac=SHA1"
    2013/11/01 23:27:59 [debug] 16494#0: *240 reusable connection: 1

在网上搜索后,我能想到的唯一原因是 ssl 重新协商,根据一些帖子,Safari 仍然不支持。使用其他浏览器我没有看到任何问题。而且 unitedwifi.com 是我在我的 VPN 上托管的一个门户网站 nginx 有没有办法从 conf 文件中禁用重新协商?有什么建议可以解决这个问题吗?

4

1 回答 1

3

自 0.7.64 或 0.8.23 起,Nginx 不允许重新协商。而且我在您提供的调试日志中没有看到任何重新协商。

http://nginx.org/en/CHANGES

Changes with nginx 0.8.23                                        11 Nov 2009

   *) Security: now SSL/TLS renegotiation is disabled.
      Thanks to Maxim Dounin.

很可能,该证书警告弹出窗口与 nginx 无关,而是与证书本身有关。

于 2013-11-15T12:54:20.840 回答