
连接 mssql 时出现 ssl routines 错误
在使用 php 连接 microsoft sql server 时,遇到 ssl routines 错误,询问具体原因和解决办法。
问题内容:
使用 dns 连接 mssql 时,出现以下报错:
立即学习“PHP免费学习笔记(深入)”;
----- 以下用dns连接后的报错 ----- ssl operation failed with code 1. openssl error messages: error:14094418:ssl routines:ssl3_read_bytes:tlsv1 alert protocol version
问题解答:
ssl routines 错误通常是由于 ssl 证书验证失败导致的。在连接参数中添加 trustservercertificate=1 可以信任服务器证书并解决该问题:
$connection = new \pdo( 'sqlsrv:server=your_server;database=your_database', 'your_username', 'your_password', ['trustservercertificate' => 1] );
注意,如果使用 dsn 连接,需要将参数拼接在连接字符串中:
// 使用 DSN 连接,设置 TrustServerCertificate 参数 $dsn = 'sqlsrv:Server=your_server;Database=your_database;TrustServerCertificate=1'; $connection = new \PDO($dsn, 'your_username', 'your_password');
参考:
以上就是PHP连接MSSQL数据库时SSL routines错误如何解决?的详细内容,更多请关注php中文网其它相关文章!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号