laravel項目本地數據庫連接錯亂原因和解決方法


由於在本地建了兩個laravel項目,test.me 和 api-test.me,當我在 test.me 中調用 curl 去請求 api-test.me 的方法,試圖獲取數據時,

接口一直返回沒有找到對應的表,經過排查,發現 api-test.me 連接的數據庫並不是 .env 中配置的。

然后各種百度,google,才發現 laravel 中通過 getenv() 和 putenv() 這兩個函數來獲取配置參數,但這兩個函數是非線程安全的。

但自已安裝的PHP7.2版本又是線程安全模式,所以就出問題了。

 

解決方案:

1、更改PHP版本為非線程安全( nts )版本。

2、在config/database.php中寫死數據庫連接配置,不用 env()。

3、如果使用 apache,可以將工作模式設置為 prefork 模式。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM