我刚刚将我在 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/