1)打开Nginx的配置文件
sudo nano /etc/nginx/nginx.conf
2)在http部分下增加以下配置
fastcgi_intercept_errors on; error_page 500 = /500error.html;
3)在server部分下增加以下配置
location /500error.html { internal; root /path/to/your/laravel/public; }
4)重新启动Nginx服务
sudo systemctl restart nginx
5)在Laravel的app/Exceptions/Handler.php中添加以下代码
if ($exception instanceof \ErrorException && env('APP_ENV') != 'production') { abort(500); }
6)在Laravel的public目录下创建一个500error.html文件
Sorry, something went wrong.
7)重启Laravel的开发服务器
php artisan serve
现在,在本地开发环境中,当Laravel抛出500错误时,Nginx会显示自定义错误页面,而不是bad gateway错误。