如何“打开”Laravel信息堆栈跟踪?

时间:2014-05-28 08:00:59

标签: debugging laravel-4

在书中,#34; Laravel4"它表示如果输入无效的URL,Laravel将抛出NotFoundHttpException并显示堆栈跟踪。

但是,当我使用Laravel并输入无效的网址时,我只会收到一条消息:

  

糟糕,看起来出了问题。

对此有任何建议表示赞赏。

4 个答案:

答案 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 AllAllowOverride 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