Laravel不会在面板中读取.env文件

时间:2018-05-09 21:29:32

标签: php laravel cpanel

我已将我的Laravel应用程序上传到cpanel主机。 问题是Laravel没有读取.env文件的内容并向我显示“哎呀,看起来出了问题”。页面(两次在一页) 显示此错误是因为程序无法接收APP_KEY变量。根本无法读取.env文件。我搜索了一下这个问题,但解决方案没有用。我尝试了所有这些:

  • 'php artisan cache:clear'command
  • 'php artisan config:clear'command
  • 'php artisan config:cache'command
  • 更改.env文件的权限(755)
  • 运行所有'composer update','composer install','composer dump-autoload'命令
  • 我没有在任何地方使用env功能
  • env文件中存储的值中没有空格

但以上都没有成功。 但是,我的程序在本地(Windows)运行良好,没有问题但它不在服务器上运行(cpanel)

注意:我意识到当我在服务器上执行'php artisan config:cache'命令时,所有缓存文件都在'bootstrap / cache'文件夹中生成,但config.php文件除外 注2:我以不同的方式上传了好几次。一旦根文件夹中的所有文件和public_html文件夹中的公共文件。以及public_html文件夹中的所有文件。两者都不起作用

有谁知道问题出在哪里?

in this time i put all my app files in public_html folder

3 个答案:

答案 0 :(得分:0)

查看storage/logs/laravel.log文件以获取更准确的信息。

确保在putenv()

中未禁用getenv()php.ini功能

答案 1 :(得分:0)

您不应将.env文件用于生产,仅用于开发目的。

为您的生产创建环境变量(在服务器上不是.env)。

答案 2 :(得分:-1)

在新网站上我总会遇到这种情况,所以我经常跑:

chmod 777 storage/ storage/app/ storage/framework/ storage/logs/
chmod 777 storage/ storage/app/ storage/framework/ storage/logs/
chmod 777 storage/framework/cache/ storage/framework/sessions/ storage/framework/views/
chmod 777 bootstrap/cache/
chmod 777 bootstrap/cache/*
chmod 777 storage/logs/laravel.log

注意:最后一个(laravel.log)第一次不存在,然后它就会被创建。

如果你第一次运行,你可以使用更推荐的ug + rwx而不是777:     chgrp -R www-data storage bootstrap / cache     chgrp -R www-data storage storage

其中www-data是Web服务器用户,可以是apache或httpd