异常处理程序中出现Laravel Digital Ocean错误


Laravel Digital Ocean Error in exception handler

我已经完成了phpacademy数字海洋教程,以便尝试设置我的laravel网站。在完成这些步骤之后,我的设置与他们的设置有所不同。我默认的index.html页面位于/var/www/html而不是/var/www

我删除了index.html页面并上传了我的laravel应用程序。我没有使用任何DB连接(只是使用静态内容)。我在当地用流浪者和宅地开发了我的网站。

上传应用程序并转到IP地址后,我得到了Laravel应用程序目录列表。当我公开时,我收到一条消息,说mcrypt是必需的/没有安装。我用sudo php5enmod mcrypt安装了它,然后重新启动了服务器。

我再次重新加载了页面,并收到以下消息(在将调试转为true后)"异常处理程序中的错误:流或文件

无法打开"/var/www/html/app/storage/logs/lavel.log":无法打开流:中的权限被拒绝/var/www/html/vendor/monolog/monolog/src/monolog/Handler/StreamHandler.php:84"

我该如何解决这个问题,我可以删除/public并只使用直接的IP/域吗(一旦我做到了这一点)

错误消息指示它无法在那里打开您的日志文件。假设您正在使用本教程(https://www.digitalocean.com/community/tutorials/how-to-install-laravel-with-nginx-on-an-ubuntu-12-04-lts-vps),请参阅"修复权限"小节,您需要修改存储目录。

chmod -R 775 /var/www/laravel/app/storage

用sudo启动artisan。这将为artisan提供所需的所有权限,也不会造成任何安全问题。

因此,开始手工服务:

$ php artisan serve

尝试使用:

$ sudo php artisan serve 

因此,您不必对进行任何权限更改