我在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文件中的重新协商?有什么建议可以解决这个问题吗?
答案 0 :(得分:1)
Nginx自0.7.64或0.8.23以来不允许重新谈判。我没有在您提供的调试日志中看到任何重新协商。
Changes with nginx 0.8.23 11 Nov 2009
*) Security: now SSL/TLS renegotiation is disabled.
Thanks to Maxim Dounin.
最有可能的是,证书警告弹出与nginx无关,但与证书本身有关。