2016-02-12 41 views
1

我在AWS Opsworks服務器上安裝了Laravel 5.2應用程序。 Web瀏覽器界面完美運行。但是當我嘗試在命令行(php artisan xxxxxxx)上運行Artisan命令時,我不斷收到mysql連接錯誤[2002]。所以我縮小了它的環境變量。我們在.env文件中定義了40個變量。我開始在我的工匠腳本中添加一些簡單的echo語句來回顯數據庫連接變量。它只會回顯數據庫名稱。主持人,用戶和通行證都空白了。我想也許拉拉維爾只是聰明,沒有迴應那些安全。所以我決定回覆artisan腳本中的所有環境變量。其中只有2個會迴應。其餘的都是空白的。任何理由爲什麼laravel的工匠不能讀取.env中的大部分環境變量?Laravel技工不讀取所有環境變量

+0

檢查語法我會告訴你發佈.env,但沒有程序員會想這樣做。 –

回答

1

這個問題歸結爲AWS如何實現數據庫連接變量。當AWS部署它時,將該信息放入apache配置中。然而,由於CLI的本質,沒有任何阿帕奇成爲圖片。所以,我們必須創建一個最後運行的廚師配方,並從apache配置中抓取新編寫的env變量並創建.env文件。這是相當多的,但現在似乎工作正常。