Laravel 5.2不是在ubuntu上从.env上读取的
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Laravel 5.2不是在ubuntu上从.env上读取的相关的知识,希望对你有一定的参考价值。
注意:这个问题不是这些问题的重复:
我收到这个错误:
production.ERROR: exception 'RuntimeException' with message 'No supported encrypter found. The cipher and / or key length are invalid.' in /home/coder/.local/share/Trash/files/myblog/vendor/laravel/framework/src/Illuminate/Encryption/EncryptionServiceProvider.php:45
当我尝试dd($config['key']);
时,它返回'null'。甚至数据库环境变量也返回null。所以这意味着Laravel不会从.env文件中读取。
- 是什么原因?
- 如何解决这个问题?
现在我通过在Config / app.php文件中手动指定密钥并在Config / database.php文件中设置数据库值来解决了这个问题
我怀疑我的.env文件中的权限/所有者错误。我在Elementary OS开发
答案
为了确保您正在阅读最新版本的.env
文件,请确保运行php artisan config:clear
。
您可能还想运行php artisan key:generate
为您的应用生成密钥(如果您还没有这样做)。在AES-256-CBC
同时检查你的密码是config/app.php
还是更好也没有坏处。
如果这是本地开发环境,并且您认为.env
文件的权限可能有误,请检查它们,如下所示:
# Check the permissions
cd /path/to/app
ls -l -a
# IF required change the file permissions
sudo chmod 660 .env
Note
另请注意,根据您的开发环境,可以在$_ENV
或homestead.yaml
等地方设置一些nginx.conf
变量。
另一答案
我经历过这个。由于@Spholt上面提供的一些提示,原因是apache(用户www-data)由于文件权限而无法读取.env。所以我更改了文件权限以确保服务器(apache)具有对文件的读取权限。只是那个和繁荣,现在一切正常!
以上是关于Laravel 5.2不是在ubuntu上从.env上读取的的主要内容,如果未能解决你的问题,请参考以下文章