我得到了一個運行php 5.5.9,laraverl 5.2的ubuntu docker容器,它可以成功連接到SQL Server並返回結果。Laravel與ENCRYPT的SQL Server連接= yes trustServerCertificate = true
我使用的碼頭工人形象https://hub.docker.com/r/h2labs/laravel-mssql/
我的問題是,該服務器使用加密和我找不到如何把下面的參數傳遞給laravel連接字符串爲MSSQL
ENCRYPT=yes;trustServerCertificate=true
我目前的SQL Server連接字符串看起來像這樣
DB_CONNECTION=sqlsrv
DB_HOST=sql.mydomain.com
DB_PORT=1433
DB_DATABASE=mydbname
DB_USERNAME=mysusername
DB_PASSWORD=mypass
我的laravel數據庫配置看起來像這樣
'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' => '',
],
SQL Server錯誤日誌條目是
加密才能連接到該服務器,但客戶端庫不支持加密;連接已關閉。請升級您的客戶端庫。 [客戶端:103.31.114.56]
你有沒有試過他們到你的'.env'文件 –