登录
首页 >  文章 >  php教程

PHP连接MSSQL数据库时SSL routines错误如何解决?

时间:2024-12-08 17:00:58 442浏览 收藏

目前golang学习网上已经有很多关于文章的文章了,自己在初次阅读这些文章中,也见识到了很多学习思路;那么本文《PHP连接MSSQL数据库时SSL routines错误如何解决?》,也希望能帮助到大家,如果阅读完后真的对你学习文章有帮助,欢迎动动手指,评论留言并分享~

PHP连接MSSQL数据库时SSL routines错误如何解决?

连接 mssql 时出现 ssl routines 错误

在使用 php 连接 microsoft sql server 时,遇到 ssl routines 错误,询问具体原因和解决办法。

问题内容:

使用 dns 连接 mssql 时,出现以下报错:

----- 以下用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');

参考:

  • [thinkphp6.0完全开发手册 - 连接数据库](https://docs.thinkphp.cn/doc/6.0/database.html#连接数据库)
  • [连接选项 - microsoft sql server 的 php 驱动程序](https://docs.microsoft.com/zh-cn/sql/connect/php/connection-options)

今天关于《PHP连接MSSQL数据库时SSL routines错误如何解决?》的内容就介绍到这里了,是不是学起来一目了然!想要了解更多关于的内容请关注golang学习网公众号!

相关阅读
更多>
最新阅读
更多>
课程推荐
更多>