Laravel Ubuntu 16.04返回状态码500

时间:2016-11-04 17:39:57

标签: apache laravel ubuntu xampp laravel-5.3

我刚刚将在localhost(使用XAMPP)开发的Laravel项目部署到服务器。

我上传了所有文件,创建了一个新的.env文件(也得到了一个app-key),运行了composer install,创建了db,运行了artisan migrate。

另外,在 /etc/apache2/sites-enabled/000-default.conf我将DocumentRoot设置为laravel的公共目录。另外,我尝试编辑apache2.conf以包含目录,Allowoverride All

但是进入我服务器的ip,我会重定向到登录页面(当然,我正在使用Laravel的Auth)。

但我收到了错误:

Failed to load resource: the server responded with a status of 500 (Internal Server Error)

我尝试按照those步骤进行操作,但它们完全相同。除了一点之外,在我的apache2.conf我不再写了DocumentRoot,因为我已经在000-default.conf中设置了它。我还尝试在apache2.conf中第二次设置它,但这没有改变。

那么问题是什么呢?

我正在使用Ubuntu 16.04。

PS:在laravel里面似乎发生了一些事情。当我走一条现有的路线时,我总是得到这个错误代码500.当我去一条不存在的路线时,我得到一个错误(NotFoundHttpException),所以路由本身有点似乎有效,但这个错误来自哪里?这正是我在XAMPP上使用的本地文件,在本地它运行良好......有什么想法吗?

编辑:编辑我的日志目录以获得777等权限后,我也遇到了2个错误。

两者都指向存储/框架/视图/和存储/框架/会话,说"权限被拒绝"。我是否也必须为这些目录运行chmod?

3 个答案:

答案 0 :(得分:1)

检查storage/logs/laravel.log中的错误,如果没有日志,请确保storage的目录权限允许其可写775是我通常使用的。

答案 1 :(得分:0)

好的,我明白了,基本上是权限。

我现在将-jar文件夹的所有者更改为storage。现在它正在工作(对于任何可能遇到此问题的人)。

答案 2 :(得分:0)

如果使用vps ubuntu,则必须通过在腻子上使用此命令来设置对根文件夹(及其所有文件,文件夹)的写/读权限:

  

chown -R www-data:www-data / var / www / html

我尝试了此命令,但我的网站没有显示500错误