如何让nginx显示错误日志


How to let nginx show the error log?

当我使用 docker 开发我的项目时,使用安装了 nginx 的映像,如果发生任何错误,我只会看到以下内容:

502 Bad Gateway
nginx/1.4.6 (Ubuntu)

目前,查看正在发生的事情的唯一方法是检查storage/logs哪个很好,但是日志错误不应该在浏览器中查看,而不仅仅是看到502 Bad Gateway

在我的 .env 中:

APP_ENV=local
APP_DEBUG=true

知道吗?

编辑

如果我的应用程序中没有错误,我会在浏览器中正常看到它,当我在Laravel应用程序中遇到错误时,我只会看到502 Bad Gateway错误

错误将是:

[2016-02-24 11:59:38] local.ERROR: exception 'Symfony'Component'Debug'Exception'FatalErrorException' with message 'Class 'App'Http'Controllers'Redirect' not found' in /share/app/Http/Controllers/NodesController.php:68
Stack trace:
#0 /share/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(133): Symfony'Component'Debug'Exception'FatalErrorException->__construct('', '', '', '', '', '', '', '')
#1 /share/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(118): Illuminate'Foundation'Bootstrap'HandleExceptions->fatalExceptionFromError('', '')
#2 /share/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(0): Illuminate'Foundation'Bootstrap'HandleExceptions->handleShutdown()
#3 /share/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(76): App'Http'Controllers'NodesController->store('')
#4 /share/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(76): call_user_func_array('', '')
#5 /share/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(146): Illuminate'Routing'Controller->callAction('', '')
#6 /share/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(94): Illuminate'Routing'ControllerDispatcher->call('', '', '')
#7 /share/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(52): Illuminate'Routing'ControllerDispatcher->Illuminate'Routing'{closure}('')
#8 /share/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(52): call_user_func('', '')
#9 /share/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(103): Illuminate'Routing'Pipeline->Illuminate'Routing'{closure}('')
#10 /share/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(103): call_user_func('', '')
#11 /share/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(96): Illuminate'Pipeline'Pipeline->then('')
#12 /share/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(54): Illuminate'Routing'ControllerDispatcher->callWithinStack('', '', '', '')
#13 /share/vendor/laravel/framework/src/Illuminate/Routing/Route.php(174): Illuminate'Routing'ControllerDispatcher->dispatch('', '', '', '')
#14 /share/vendor/laravel/framework/src/Illuminate/Routing/Route.php(140): Illuminate'Routing'Route->runController('')
#15 /share/vendor/laravel/framework/src/Illuminate/Routing/Router.php(724): Illuminate'Routing'Route->run('')
#16 /share/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(52): Illuminate'Routing'Router->Illuminate'Routing'{closure}('')
#17 /share/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(52): call_user_func('', '')
#18 /share/app/Http/Middleware/LocaleMiddleware.php(48): Illuminate'Routing'Pipeline->Illuminate'Routing'{closure}('')
#19 /share/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(124): App'Http'Middleware'LocaleMiddleware->handle('', '')
#20 /share/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(124): call_user_func_array('', '')
#21 /share/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(32): Illuminate'Pipeline'Pipeline->Illuminate'Pipeline'{closure}('')
#22 /share/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(32): call_user_func('', '')
#23 /share/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(64): Illuminate'Routing'Pipeline->Illuminate'Routing'{closure}('')
#24 /share/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(124): Illuminate'Foundation'Http'Middleware'VerifyCsrfToken->handle('', '')
#25 /share/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(124): call_user_func_array('', '')
#26 /share/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(32): Illuminate'Pipeline'Pipeline->Illuminate'Pipeline'{closure}('')
#27 /share/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(32): call_user_func('', '')
#28 /share/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(49): Illuminate'Routing'Pipeline->Illuminate'Routing'{closure}('')
#29 /share/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(124): Illuminate'View'Middleware'ShareErrorsFromSession->handle('', '')
#30 /share/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(124): call_user_func_array('', '')
#31 /share/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(32): Illuminate'Pipeline'Pipeline->Illuminate'Pipeline'{closure}('')
#32 /share/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(32): call_user_func('', '')
#33 /share/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(62): Illuminate'Routing'Pipeline->Illuminate'Routing'{closure}('')
#34 /share/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(124): Illuminate'Session'Middleware'StartSession->handle('', '')
#35 /share/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(124): call_user_func_array('', '')
#36 /share/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(32): Illuminate'Pipeline'Pipeline->Illuminate'Pipeline'{closure}('')
#37 /share/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(32): call_user_func('', '')
#38 /share/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(37): Illuminate'Routing'Pipeline->Illuminate'Routing'{closure}('')
#39 /share/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(124): Illuminate'Cookie'Middleware'AddQueuedCookiesToResponse->handle('', '')
#40 /share/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(124): call_user_func_array('', '')
#41 /share/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(32): Illuminate'Pipeline'Pipeline->Illuminate'Pipeline'{closure}('')
#42 /share/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(32): call_user_func('', '')
#43 /share/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(59): Illuminate'Routing'Pipeline->Illuminate'Routing'{closure}('')
#44 /share/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(124): Illuminate'Cookie'Middleware'EncryptCookies->handle('', '')
#45 /share/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(124): call_user_func_array('', '')
#46 /share/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(32): Illuminate'Pipeline'Pipeline->Illuminate'Pipeline'{closure}('')
#47 /share/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(32): call_user_func('', '')
#48 /share/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(103): Illuminate'Routing'Pipeline->Illuminate'Routing'{closure}('')
#49 /share/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(103): call_user_func('', '')
#50 /share/vendor/laravel/framework/src/Illuminate/Routing/Router.php(726): Illuminate'Pipeline'Pipeline->then('')
#51 /share/vendor/laravel/framework/src/Illuminate/Routing/Router.php(699): Illuminate'Routing'Router->runRouteWithinStack('', '')
#52 /share/vendor/laravel/framework/src/Illuminate/Routing/Router.php(675): Illuminate'Routing'Router->dispatchToRoute('')
#53 /share/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(246): Illuminate'Routing'Router->dispatch('')
#54 /share/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(52): Illuminate'Foundation'Http'Kernel->Illuminate'Foundation'Http'{closure}('')
#55 /share/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(52): call_user_func('', '')
#56 /share/vendor/barryvdh/laravel-debugbar/src/Middleware/Debugbar.php(49): Illuminate'Routing'Pipeline->Illuminate'Routing'{closure}('')
#57 /share/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(124): Barryvdh'Debugbar'Middleware'Debugbar->handle('', '')
#58 /share/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(124): call_user_func_array('', '')
#59 /share/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(32): Illuminate'Pipeline'Pipeline->Illuminate'Pipeline'{closure}('')
#60 /share/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(32): call_user_func('', '')
#61 /share/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/CheckForMaintenanceMode.php(44): Illuminate'Routing'Pipeline->Illuminate'Routing'{closure}('')
#62 /share/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(124): Illuminate'Foundation'Http'Middleware'CheckForMaintenanceMode->handle('', '')
#63 /share/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(124): call_user_func_array('', '')
#64 /share/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(32): Illuminate'Pipeline'Pipeline->Illuminate'Pipeline'{closure}('')
#65 /share/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(32): call_user_func('', '')
#66 /share/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(103): Illuminate'Routing'Pipeline->Illuminate'Routing'{closure}('')
#67 /share/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(103): call_user_func('', '')
#68 /share/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(132): Illuminate'Pipeline'Pipeline->then('')
#69 /share/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(99): Illuminate'Foundation'Http'Kernel->sendRequestThroughRouter('')
#70 /share/public/index.php(54): Illuminate'Foundation'Http'Kernel->handle('')
#71 /share/public/index.php(0): {main}()
#72 {main}  

编辑2

nginx配置:

server {
        client_max_body_size 500M;
        listen   80 default_server;
        root /share/public/;
        index index.php index.html index.htm;
        location / {
             try_files $uri $uri/ /index.php$is_args$args;
        }
        # pass the PHP scripts to FastCGI server listening on /var/run/php5-fpm.sock
        location ~ '.php$ {
                try_files $uri /index.php =404;
                fastcgi_pass unix:/var/run/php5-fpm.sock;
                fastcgi_index index.php;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                include fastcgi_params;
                add_header Cache-Control no-cache;
        }
}

502 错误网关是 Web 服务器配置不正确的结果。您的请求由Nginx处理,它不能将其重定向到PHP或Laravel。

此错误的原因很可能是 Nginx 配置中缺少转发到 PHP 的代理或不正确的代理。

这些错误仅记录在 Nginx 错误日志 ( /var/log/nginx/error.log ) 中,而不是在 Laravel 日志中,因为您的应用程序和 php 没有处理请求。

错误发生在nginx而不是PHP中,这就是为什么您在浏览器中看不到它们的原因。

您可以检查文件夹中/var/log/nginx/ nginx日志是否存在错误,并清空storage/logs文件夹,以确保其中没有新错误。

修复nginx错误后,您可以配置PHP以根据 https://stackoverflow.com/a/5438125/50475 向浏览器显示所有错误