apache - Laravel Ubuntu 16.04 返回状态码 500

标签 apache laravel ubuntu xampp laravel-5.3

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

我上传了所有文件,创建了一个新的 .env 文件(还有一个 app-key),运行了 composer install,创建了数据库,运行了 artisan migrate。

此外,在/etc/apache2/sites-enabled/000-default.conf我将 DocumentRoot 设置为 laravel 的公共(public)目录。我也尝试编辑 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 个错误。

两者都指向 storage/framework/views/和 storage/framework/sessions,表示“Permission denied”。我也只需要为这些目录运行 chmod 吗?

最佳答案

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

关于apache - Laravel Ubuntu 16.04 返回状态码 500,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40428768/

相关文章:

Laravel 4 - 如何使用具有软删除的唯一验证规则/唯一列?

javascript - Laravel 5.4 中如果记录存在禁用按钮

ubuntu - 为 armv5 交叉编译,但它创建 v7 二进制文件

php - 将 Ubuntu 时钟源从 xen 切换到 tsc 会影响 php/Laravel 应用程序吗?

ubuntu - 在 Ubuntu 12.04 中下载谷歌代码

Laravel 4.2 SuperClosure : Attempted to serialize unserializable builtin class Closure

php - 如何检查 php 以什么用户身份运行?

php - xdebug 安装不工作

redirect - Apache httpd.conf,用于将ip重定向到主机名

java - 如何使用apache配置库获取属性值和标签值