Laravel WSOD在新安装w/o日志错误消息


Laravel WSOD on fresh install w/o log error message

又是一个没有线索的Laravel 4白屏。

我的背景:

  • Server CentOS 6.5
  • Apache 2.2.15
  • PHP 5.4.23
  • php mcrypt enabledphp log_errors working
  • Laravel fresh install: "$ Laravel new project"
  • 存储文件夹权限777
  • there is no laravel error log
  • 没有错误apache/httpd日志

我试着做一个"手动调试"和应用程序停止在start.php:

$app = new Illuminate'Foundation'Application;

深入了解 compile_php 我忘记了share方法调用:

use Illuminate'Support'ServiceProvider;
class EventServiceProvider extends ServiceProvider
{
    public function register()
    {
        $this->app['events'] = $this->app->share(function ($app) {
            return new Dispatcher($app);
        });
    }
}

编辑

检查相同的"500 Server Internal Error"使用Laravel的服务器($ php artisan serve)。

如果没有错误日志消息,则可能是错误日志配置问题。

查看所有php日志相关参数php.ini:

log_errors = On
error_reporting = E_ALL   // or 32767
error_log = syslog        // log file, 'syslog' value usually means /var/log/messages
                          //   or /var/log/syslog
display_errors = On          // print errors on screen if you're not
display_startup_errors = On  //   in a production environment

如果您正在运行Apache/VirtualHost,请查看httpd.conf以获取备用日志文件

<VirtualHost>
    ErrorLog /var/www/example.com/error_log
</VirtualHost>

试着运行Laravel的服务器来调试你的web服务器中可能出现的错误。

php artisan serve

您应该可以访问localhost:8000

如果它不显示Laravel的启动页面,那么Composer可能有问题。如果它显示闪屏页面,它可以是

    Apache配置
  • app/storage目录和子目录不能被PHP写入

除了Apache的错误日志,你还可以检查Laravel的错误日志