我有两个基于Fedora的apache webservers使用php / cURL进行相同的SSL PUT / POST调用。一个工作正常,但另一个调用成功,但需要很长时间才能返回响应(约10分钟)。 (GET似乎没有受到影响)
工作服务器的cURL使用OpenSSL进行SSL,而非工作版本使用更高版本的cURL,使用NSS进行SSL
我对SSL实现或它们对cURL的影响一无所知。什么会导致SSL PUT / POST响应出现如此显着的延迟?
任何建议表示赞赏 - 谢谢 -
答案 0 :(得分:0)
我只能猜测,但有些SSL实施最终会尝试进行不必要的反向DNS查找,这些可能需要很长时间才能完成。
答案 1 :(得分:0)
是的,我会打赌DNS问题。
尝试从root运行跟踪路由并获取一些连接数据。
在两台计算机上执行此操作,以便您可以在Debug中首先显示问题所在的位置。
答案 2 :(得分:0)
我不知道答案。 DNS建议总是很好。其他想法包括MTU发现,服务器不提供中间证书,因此客户可能试图下载丢失的中间人或尝试检查CAs补充清单。
下载wireshark,您应该能够更好地了解客户之间的行为差异。
答案 3 :(得分:0)
您是否在httpd.conf中检查了KeepAlive选项,它应该是On。 请参阅http://www.debian-administration.org/articles/188