在书中,#34; Laravel4"它表示如果输入无效的URL,Laravel将抛出NotFoundHttpException
并显示堆栈跟踪。
但是,当我使用Laravel并输入无效的网址时,我只会收到一条消息:
糟糕,看起来出了问题。
对此有任何建议表示赞赏。
答案 0 :(得分:4)
默认情况下,Laravel设置为production
环境。您应该将机器的环境设置为debug
环境,而不是更改production
的默认local
值。
要将您的计算机设置为local
环境,请打开bootstrap/start.php
并将计算机的主机名添加到:
$env = $app->detectEnvironment(array(
'local' => array('your-machine-name'),
));
要查找计算机的名称,请从命令行运行hostname
。
答案 1 :(得分:3)
转到 config / app.php ,然后设置' debug '到' true ',显然Laravel 4.1将默认值设置为false。
答案 2 :(得分:1)
如果您已经编辑了bootstrap / start.php文件但仍然没有显示堆栈跟踪,那么问题可能在于apache,请尝试添加Options All
和AllowOverride All
。
示例:强>
1)找到您的主机名。在bootstrap / start.php中输入:
die(gethostname());
重新加载页面,主机名应该出现。
2)编辑bootstrap / start.php并添加主机名
$env = $app->detectEnvironment(array(
'local' => array('machine-hostname'),
));
3)检查你的apache vhost文件,它应该是这样的:
<VirtualHost *:80>
DocumentRoot "/var/www/html/<project-folder>"
ServerName <example.com>
RewriteEngine On
<Directory "/var/www/html/<project-folder>">
Options All
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
答案 3 :(得分:0)
Laravel 4.2
找到您所在位置的应用配置。 将debug更改为true。
因此,对于您的服务器设置,它位于app / config / app.php
中'debug' => true,
但是如果你设置了正确的本地设置,那么设置就是 应用程序/配置/本地/ app.php