Laravel:证书链是由一个不受信任的机构颁发的



以下是完整的错误消息:

SQLSTATE[08001]:[Microsoft][ODBC Driver 18 for SQL Server]SSL提供程序:证书链是由不受信任的颁发机构颁发的。

我有一个私人公司项目,目前该项目是使用CodeIgniter3开发的,数据库使用Microsoft SQL Server。我需要把这个项目变成Laravel9。所以,我遵循了一些指导,直到在这里遇到一些教程:

  • Laravel迁移在windows中使用sqlsrv数据库时找不到驱动程序(最后一个答案似乎适合我的问题(
  • https://www.microsoft.com/en-us/download/details.aspx?id=20098(这是PHP7的驱动程序,但我的项目使用PHP8.0,所以我下载了另一个文件(

安装没有遇到太大问题。我与合适的驾驶员一起按照第一个列表中的程序进行操作。但随后面临上述错误。

我在这里找到了解决方案:带有ENCRYPT的Laravel SQL Server连接=yes trustServerCertificate=true

它也适用于laravel 9,像下面的一样更新配置文件config/database.php

'sqlsrv' => [
'driver' => 'sqlsrv',
'host' => env('DB_HOST', 'localhost'),
'database' => env('DB_DATABASE', 'forge'),
'username' => env('DB_USERNAME', 'forge'),
'password' => env('DB_PASSWORD', ''),
'charset' => 'utf8',
'prefix' => '',
'encrypt' => 'yes',
'trust_server_certificate' => true,
],

最新更新