Laravel工匠没有阅读所有环境变量

时间:2016-02-12 14:47:33

标签: laravel environment-variables laravel-5.2 artisan

我在AWS Opsworks服务器上安装了Laravel 5.2应用程序。 Web浏览器界面完美运行。但是当我尝试在命令行(php artisan xxxxxxx)运行Artisan命令时,我不断收到mysql连接错误[2002]。所以我把它缩小到环境变量。我们在.env文件中定义了40个变量。我开始在我的工匠脚本中添加一些简单的echo语句来回显数据库连接变量。它只会回显数据库名称。主持人,用户和通行证都是空白的。我想也许laravel只是聪明而不是为了安全而回应那些。所以我决定在工匠脚本中回显所有环境变量。其中只有2个会回响。其余的都是空白的。 laravel的工匠无法读取.env中的大部分环境变量的任何理由?

1 个答案:

答案 0 :(得分:1)

问题归结为AWS如何实现数据库连接变量。 AWS部署时,将该信息放入apache配置中。但是,由于CLI的性质,没有Apache进入图片。因此,我们必须创建一个最后运行的主厨配方,并从apache配置中获取新写入的env变量并创建.env文件。这是多余的,但现在似乎工作正常。