我最近禁用了TLS 1.0& Web服务器上的TLS 1.1,但它似乎已经导致我运行的一些PHP站点出现了一些问题。
有问题的错误是:" [Microsoft] [SQL Server的ODBC驱动程序11]客户端不支持加密。"但我在同一台服务器上运行TLS 1.2上的其他站点,我甚至还有其他基于PHP的站点仍然可以连接到数据库,尽管是早期版本的PHP(5.3.28,我认为甚至可能已经在添加TLS 1.2支持之前..所以不确定它们如何仍然可用,因为服务器现在仅限于TLS 1.2)。
无论如何,我现在已经对此进行了一段时间的故障排除,并且非常感谢您尝试的任何新想法。
其他信息:
服务器:Windows Server 2012 R2 Standard(IIS 8)
PHP版本:7.0.17
卷曲版本:7.47.1
SSL版本:OpenSSL / 1.0.2h
OPENSSL_VERSION_NUMBER:1000208f
过去,相同的网站已经能够连接到数据库,显然不是通过TLS 1.2
如果我可以提供任何其他有用的信息,请告诉我,我会更新该帖子。
感谢。
答案 0 :(得分:1)
对于SSL连接失败,您可能需要查看双方 (客户端和服务器端)。请检查sql server和 在article on TLS 1.2
的帮助下验证是否可以
同样对于ODBC驱动程序,您必须确保更新所有组件。请参阅this msdn 。
还可以执行this powershell script以确定哪些驱动程序需要更新。