【发布时间】:2023-01-03 21:27:08
【问题描述】:
我尝试将 mssql 连接到我的 symfony 项目,但出现错误 SQLSTATE[08001]:[Microsoft][SQL Server 的 ODBC 驱动程序 18]SSL 提供程序:[错误:1416F086:SSL 例程:tls_process_server_certificate:证书验证失败:自签名证书] “
所以我想在 pdo 概念上设置“TrustServerCertificate=yes”,但无法弄清楚它在 symfony 上的表现
我试着用 .env 写
DATABASE_MSSQL_URL="mssql://user:password@ip:port/db_name?Trusted_Connection=yes&Encrypt=yes&TrustServerCertificate=yes"
在配置/包/doctrine.yaml 中:
dbal:
jtl:
url: '%env(resolve:DATABASE_MSSQL_URL)%'
driver: 'pdo_sqlsrv'
server_version: '13'
charset: utf8mb4
它没有帮助
【问题讨论】:
-
一些驱动程序接口有点不稳定。你试过
TrustServerCertificate=yes;而不是TrustServerCertificate=true;看看它是否有效? -
此外,鉴于学说文件中的 snake_case 参数,您可以在那里尝试
trust_server_certificate: true。 -
“mssql://user:password@ip:port/db_name;TrustServerCertificate=1” - 它对我有用
标签: sql-server symfony pdo sqlsrv