我已将我的Laravel应用程序上传到cpanel主机。 问题是Laravel没有读取.env文件的内容并向我显示“哎呀,看起来出了问题”。页面(两次在一页) 显示此错误是因为程序无法接收APP_KEY变量。根本无法读取.env文件。我搜索了一下这个问题,但解决方案没有用。我尝试了所有这些:
但以上都没有成功。 但是,我的程序在本地(Windows)运行良好,没有问题但它不在服务器上运行(cpanel)
注意:我意识到当我在服务器上执行'php artisan config:cache'命令时,所有缓存文件都在'bootstrap / cache'文件夹中生成,但config.php文件除外 注2:我以不同的方式上传了好几次。一旦根文件夹中的所有文件和public_html文件夹中的公共文件。以及public_html文件夹中的所有文件。两者都不起作用
有谁知道问题出在哪里?
答案 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