404纯页面错误模板

500纯页面错误模板


效果展示

通过浏览器地址栏,直接访问Tomcat下不存在的项目报错截图

通过配置Nginx响应Tomcat的404错误截图

通过配置Nginx响应Tomcat的500错误截图

配置解析

nginx中后端tomcat节点配置

location / {
proxy_pass http://tomcat_server;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;

proxy_intercept_errors on; # 关键配置:开启错误拦截
}

配置自定义404页面

server {
listen 80;
server_name example.com;

# 代理配置同上...

error_page 404 /custom_404.html; # 定义404错误页面

location = /custom_404.html {
root /usr/share/nginx/html; # 自定义页面存放目录
internal; # 禁止外部直接访问
}
}

配置自定义50x页面

server {
listen 80;
server_name example.com;
root /usr/share/nginx/html;

# 拦截所有50x错误
error_page 500 501 502 503 504 /custom_50x.html;

# 代理到后端服务
location / {
proxy_pass http://backend_server;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_intercept_errors on;
}

# 自定义50x页面配置
location = /custom_50x.html {
internal;
}
}

拓展配置

将404页面重定向跳转首页

error_page 404 @redirect_home;

location @redirect_home {
return 302 /; # 临时重定向到首页
}

检查配置重载配置

./nginx -t
./nginx -s reload