exception处理程序中出错。 – Laravel
这是一个Laravel安装相关的问题。 我有一个面向公众的Unix服务器设置:
<VirtualHost *:80> ServerAdmin webmaster@mydomain.org DocumentRoot "/var/www/mydomain" ServerName mydomain.org ServerAlias www.mydomain.org ErrorLog "/var/log/mydomain.org-error_log" CustomLog "/var/log/mydomain.org-access_log" common </VirtualHost>
我可以用/ var / www / mydomain来提供文件,例如: http ://mydomain.org/test.php,test.php包含:
<?php echo 'test';
工作正常。
在bash中,通过Composer安装Laravel并查看这些文件:
# ls /var/www/mydomain/my-laravel-project .gitattributes CONTRIBUTING.md artisan composer.json phpunit.xml readme.md vendor .gitignore app bootstrap composer.lock public server.php
所以当我浏览到:
http://mydomain.org/my-laravel-project/public/
为什么我的申请报告:
Error in exception handler.
在浏览器中 – 在一个空白的白色屏幕上? 我期待看到Laravel启animation面。
而且,日志文件也不会透露任何东西。
更安全的select是将存储目录组更改为您的Web服务器组(通常为apache
或www-data
,但是这可以在不同的操作系统之间有所不同),并保持目录的权限为775
。
chgrp -R www-data app/storage
或与chown
。
chown -R :www-data app/storage
然后确保目录权限是775
。
chmod -R 775 app/storage
从Laravel网站 :
Laravel可能需要configuration一组权限:应用程序/存储器内的文件夹需要Web服务器的写入权限。
Laravel 5.2
chmod -R 777存储
旧的Laravel chmod 777 app / storage / *
注意,如果你有一个合理的locking专用服务器没有用户帐户以外的其他用户帐户,777应该不会构成比其他任何更多的安全风险。 对于恶意用户来说,必须要有一些其他漏洞才能利用这个漏洞,而在这一点上,777权限可能无论如何都是无稽之谈。 但是,如果您与其他用户共享的服务器上不受信任,那么您需要查看更复杂的权限,或者检查您的主机提供商是否已经提供隔离。
他们应该把这个放在快速启动的文档中,并提供各种设置的例子。 您可能还必须在第一次加载后再次运行它,因为会自动创build更多的目录。 查看日志中是否有写入错误。
另外你的DocumentRoot应该是/ path / to / laravel-project / public
我删除了app/storage/sessions
文件夹中的旧会话,然后授予app/storage
775
权限,之后它就像一场火灾!
chmod -R 775 app/storage
祝你好运!
很久很久以前,这个潮stream已经传遍了,但是我还有一个关于“exception处理程序错误”的build议。
当我运行“php工匠”时,发生了这种情况,这是评估您的环境是否正常工作的好方法。
我跑了它,它给了我这个错误,我不能指出的问题,直到我编辑我的项目的根目录中的artisan文件,并添加一个try catch语句:
try { $artisan = Illuminate\Console\Application::start($app); } catch (Exception $e) { dd($e->getMessage()); }
我终于看到了一个启发性的信息:
string(41) "Connection refused [tcp://127.0.0.1:6379]"
在我的情况下,这是一个糟糕的redisconfiguration,但在你的情况可能是任何东西。
我希望这有助于某人,或者至less下次我到这里时,我会find自己的答案。
解决这个问题的最简单的方法就是用sudo开始工匠。 这将给工匠所需的所有权限,也不会造成任何安全问题。
所以而开始工匠服务与:
$ php artisan serve
尝试使用:
$ sudo php artisan serve
因此你不必做任何权限更改
我有同样的问题,我只是将目录应用程序/存储的权限更改为775用chmod命令行