Nginx配置示例
将以下配置添加到您的Nginx配置文件中,即可使用我们的错误页面:
配置生成器(宝塔Nginx)
输入您的网站域名,生成适合您网站的完整Nginx配置
如果网站之前已经对Nginx配置下过手,请备份好之前的Nginx配置,这个配置提供给使用宝塔面板的,输入你的域然后直接粘贴就能用:
server
{
listen 80;
# 移除SSL相关监听,避免无证书导致配置失败
# listen 443 ssl;
# listen 443 quic;
# http2 on;
server_name aaa.fuxiaoyu.cn;
index index.php index.html index.htm default.php default.htm default.html;
root /wwwroot/wwwroot/aaa.fuxiaoyu.cn;
#CERT-APPLY-CHECK--START
include /www/server/panel/vhost/nginx/well-known/aaa.fuxiaoyu.cn.conf;
#CERT-APPLY-CHECK--END
include /www/server/panel/vhost/nginx/extension/aaa.fuxiaoyu.cn/*.conf;
#SSL-START SSL相关配置(保留,不影响80端口)
#error_page 404/404.html;
#SSL-END
# ========== 核心:反向代理加载根目录错误页面(传递原始域名) ==========
# 注释宝塔默认错误页,避免冲突
#error_page 404 /404.html;
#error_page 502 /502.html;
# 定义错误码映射,=200保证浏览器不显示原生错误提示
error_page 400 =200 @error400;
error_page 401 =200 @error401;
error_page 403 =200 @error403;
error_page 404 =200 @error404;
error_page 405 =200 @error405;
error_page 408 =200 @error408;
error_page 409 =200 @error409;
error_page 413 =200 @error413;
error_page 429 =200 @error429;
error_page 500 =200 @error500;
error_page 502 =200 @error502;
error_page 503 =200 @error503;
error_page 504 =200 @error504;
error_page 505 =200 @error505;
# 404错误页(修复Host头,传递原始域名)
location @error404 {
rewrite ^ /404.php break;
proxy_pass https://error.fish1234.cn;
proxy_set_header Host error.fish1234.cn; # 关键修复:使用目标服务器域名,避免403错误
Warning: Undefined variable $remote_addr in /www/wwwroot/littlefish/errorpage/index.php on line 307
proxy_set_header X-Real-IP ;
Warning: Undefined variable $proxy_add_x_forwarded_for in /www/wwwroot/littlefish/errorpage/index.php on line 308
proxy_set_header X-Forwarded-For ;
Warning: Undefined variable $scheme in /www/wwwroot/littlefish/errorpage/index.php on line 309
proxy_set_header X-Forwarded-Proto ;
proxy_set_header X-Forwarded-Host aaa.fuxiaoyu.cn; # 额外传递原始域名头
proxy_ssl_verify off;
proxy_connect_timeout 5s;
proxy_read_timeout 10s;
}
# 400错误页
location @error400 {
rewrite ^ /400.php break;
proxy_pass https://error.fish1234.cn;
proxy_set_header Host error.fish1234.cn; # 关键修复:使用目标服务器域名,避免403错误
Warning: Undefined variable $remote_addr in /www/wwwroot/littlefish/errorpage/index.php on line 320
proxy_set_header X-Real-IP ;
Warning: Undefined variable $proxy_add_x_forwarded_for in /www/wwwroot/littlefish/errorpage/index.php on line 321
proxy_set_header X-Forwarded-For ;
Warning: Undefined variable $scheme in /www/wwwroot/littlefish/errorpage/index.php on line 322
proxy_set_header X-Forwarded-Proto ;
proxy_set_header X-Forwarded-Host aaa.fuxiaoyu.cn;
proxy_ssl_verify off;
proxy_connect_timeout 5s;
proxy_read_timeout 10s;
}
# 401错误页
location @error401 {
rewrite ^ /401.php break;
proxy_pass https://error.fish1234.cn;
proxy_set_header Host aaa.fuxiaoyu.cn;
Warning: Undefined variable $remote_addr in /www/wwwroot/littlefish/errorpage/index.php on line 333
proxy_set_header X-Real-IP ;
Warning: Undefined variable $proxy_add_x_forwarded_for in /www/wwwroot/littlefish/errorpage/index.php on line 334
proxy_set_header X-Forwarded-For ;
Warning: Undefined variable $scheme in /www/wwwroot/littlefish/errorpage/index.php on line 335
proxy_set_header X-Forwarded-Proto ;
proxy_set_header X-Forwarded-Host aaa.fuxiaoyu.cn;
proxy_ssl_verify off;
proxy_connect_timeout 5s;
proxy_read_timeout 10s;
}
# 403错误页
location @error403 {
rewrite ^ /403.php break;
proxy_pass https://error.fish1234.cn;
proxy_set_header Host aaa.fuxiaoyu.cn;
Warning: Undefined variable $remote_addr in /www/wwwroot/littlefish/errorpage/index.php on line 346
proxy_set_header X-Real-IP ;
Warning: Undefined variable $proxy_add_x_forwarded_for in /www/wwwroot/littlefish/errorpage/index.php on line 347
proxy_set_header X-Forwarded-For ;
Warning: Undefined variable $scheme in /www/wwwroot/littlefish/errorpage/index.php on line 348
proxy_set_header X-Forwarded-Proto ;
proxy_set_header X-Forwarded-Host aaa.fuxiaoyu.cn;
proxy_ssl_verify off;
proxy_connect_timeout 5s;
proxy_read_timeout 10s;
}
# 405错误页
location @error405 {
rewrite ^ /405.php break;
proxy_pass https://error.fish1234.cn;
proxy_set_header Host aaa.fuxiaoyu.cn;
Warning: Undefined variable $remote_addr in /www/wwwroot/littlefish/errorpage/index.php on line 359
proxy_set_header X-Real-IP ;
Warning: Undefined variable $proxy_add_x_forwarded_for in /www/wwwroot/littlefish/errorpage/index.php on line 360
proxy_set_header X-Forwarded-For ;
Warning: Undefined variable $scheme in /www/wwwroot/littlefish/errorpage/index.php on line 361
proxy_set_header X-Forwarded-Proto ;
proxy_set_header X-Forwarded-Host aaa.fuxiaoyu.cn;
proxy_ssl_verify off;
proxy_connect_timeout 5s;
proxy_read_timeout 10s;
}
# 408错误页
location @error408 {
rewrite ^ /408.php break;
proxy_pass https://error.fish1234.cn;
proxy_set_header Host aaa.fuxiaoyu.cn;
Warning: Undefined variable $remote_addr in /www/wwwroot/littlefish/errorpage/index.php on line 372
proxy_set_header X-Real-IP ;
Warning: Undefined variable $proxy_add_x_forwarded_for in /www/wwwroot/littlefish/errorpage/index.php on line 373
proxy_set_header X-Forwarded-For ;
Warning: Undefined variable $scheme in /www/wwwroot/littlefish/errorpage/index.php on line 374
proxy_set_header X-Forwarded-Proto ;
proxy_set_header X-Forwarded-Host aaa.fuxiaoyu.cn;
proxy_ssl_verify off;
proxy_connect_timeout 5s;
proxy_read_timeout 10s;
}
# 409错误页
location @error409 {
rewrite ^ /409.php break;
proxy_pass https://error.fish1234.cn;
proxy_set_header Host aaa.fuxiaoyu.cn;
Warning: Undefined variable $remote_addr in /www/wwwroot/littlefish/errorpage/index.php on line 385
proxy_set_header X-Real-IP ;
Warning: Undefined variable $proxy_add_x_forwarded_for in /www/wwwroot/littlefish/errorpage/index.php on line 386
proxy_set_header X-Forwarded-For ;
Warning: Undefined variable $scheme in /www/wwwroot/littlefish/errorpage/index.php on line 387
proxy_set_header X-Forwarded-Proto ;
proxy_set_header X-Forwarded-Host aaa.fuxiaoyu.cn;
proxy_ssl_verify off;
proxy_connect_timeout 5s;
proxy_read_timeout 10s;
}
# 413错误页
location @error413 {
rewrite ^ /413.php break;
proxy_pass https://error.fish1234.cn;
proxy_set_header Host aaa.fuxiaoyu.cn;
Warning: Undefined variable $remote_addr in /www/wwwroot/littlefish/errorpage/index.php on line 398
proxy_set_header X-Real-IP ;
Warning: Undefined variable $proxy_add_x_forwarded_for in /www/wwwroot/littlefish/errorpage/index.php on line 399
proxy_set_header X-Forwarded-For ;
Warning: Undefined variable $scheme in /www/wwwroot/littlefish/errorpage/index.php on line 400
proxy_set_header X-Forwarded-Proto ;
proxy_set_header X-Forwarded-Host aaa.fuxiaoyu.cn;
proxy_ssl_verify off;
proxy_connect_timeout 5s;
proxy_read_timeout 10s;
}
# 429错误页
location @error429 {
rewrite ^ /429.php break;
proxy_pass https://error.fish1234.cn;
proxy_set_header Host aaa.fuxiaoyu.cn;
Warning: Undefined variable $remote_addr in /www/wwwroot/littlefish/errorpage/index.php on line 411
proxy_set_header X-Real-IP ;
Warning: Undefined variable $proxy_add_x_forwarded_for in /www/wwwroot/littlefish/errorpage/index.php on line 412
proxy_set_header X-Forwarded-For ;
Warning: Undefined variable $scheme in /www/wwwroot/littlefish/errorpage/index.php on line 413
proxy_set_header X-Forwarded-Proto ;
proxy_set_header X-Forwarded-Host aaa.fuxiaoyu.cn;
proxy_ssl_verify off;
proxy_connect_timeout 5s;
proxy_read_timeout 10s;
}
# 500错误页
location @error500 {
rewrite ^ /500.php break;
proxy_pass https://error.fish1234.cn;
proxy_set_header Host aaa.fuxiaoyu.cn;
Warning: Undefined variable $remote_addr in /www/wwwroot/littlefish/errorpage/index.php on line 424
proxy_set_header X-Real-IP ;
Warning: Undefined variable $proxy_add_x_forwarded_for in /www/wwwroot/littlefish/errorpage/index.php on line 425
proxy_set_header X-Forwarded-For ;
Warning: Undefined variable $scheme in /www/wwwroot/littlefish/errorpage/index.php on line 426
proxy_set_header X-Forwarded-Proto ;
proxy_set_header X-Forwarded-Host aaa.fuxiaoyu.cn;
proxy_ssl_verify off;
proxy_connect_timeout 5s;
proxy_read_timeout 10s;
}
# 502错误页
location @error502 {
rewrite ^ /502.php break;
proxy_pass https://error.fish1234.cn;
proxy_set_header Host aaa.fuxiaoyu.cn;
Warning: Undefined variable $remote_addr in /www/wwwroot/littlefish/errorpage/index.php on line 437
proxy_set_header X-Real-IP ;
Warning: Undefined variable $proxy_add_x_forwarded_for in /www/wwwroot/littlefish/errorpage/index.php on line 438
proxy_set_header X-Forwarded-For ;
Warning: Undefined variable $scheme in /www/wwwroot/littlefish/errorpage/index.php on line 439
proxy_set_header X-Forwarded-Proto ;
proxy_set_header X-Forwarded-Host aaa.fuxiaoyu.cn;
proxy_ssl_verify off;
proxy_connect_timeout 5s;
proxy_read_timeout 10s;
}
# 503错误页
location @error503 {
rewrite ^ /503.php break;
proxy_pass https://error.fish1234.cn;
proxy_set_header Host aaa.fuxiaoyu.cn;
Warning: Undefined variable $remote_addr in /www/wwwroot/littlefish/errorpage/index.php on line 450
proxy_set_header X-Real-IP ;
Warning: Undefined variable $proxy_add_x_forwarded_for in /www/wwwroot/littlefish/errorpage/index.php on line 451
proxy_set_header X-Forwarded-For ;
Warning: Undefined variable $scheme in /www/wwwroot/littlefish/errorpage/index.php on line 452
proxy_set_header X-Forwarded-Proto ;
proxy_set_header X-Forwarded-Host aaa.fuxiaoyu.cn;
proxy_ssl_verify off;
proxy_connect_timeout 5s;
proxy_read_timeout 10s;
}
# 504错误页
location @error504 {
rewrite ^ /504.php break;
proxy_pass https://error.fish1234.cn;
proxy_set_header Host aaa.fuxiaoyu.cn;
Warning: Undefined variable $remote_addr in /www/wwwroot/littlefish/errorpage/index.php on line 463
proxy_set_header X-Real-IP ;
Warning: Undefined variable $proxy_add_x_forwarded_for in /www/wwwroot/littlefish/errorpage/index.php on line 464
proxy_set_header X-Forwarded-For ;
Warning: Undefined variable $scheme in /www/wwwroot/littlefish/errorpage/index.php on line 465
proxy_set_header X-Forwarded-Proto ;
proxy_set_header X-Forwarded-Host aaa.fuxiaoyu.cn;
proxy_ssl_verify off;
proxy_connect_timeout 5s;
proxy_read_timeout 10s;
}
# 505错误页
location @error505 {
rewrite ^ /505.php break;
proxy_pass https://error.fish1234.cn;
proxy_set_header Host aaa.fuxiaoyu.cn;
Warning: Undefined variable $remote_addr in /www/wwwroot/littlefish/errorpage/index.php on line 476
proxy_set_header X-Real-IP ;
Warning: Undefined variable $proxy_add_x_forwarded_for in /www/wwwroot/littlefish/errorpage/index.php on line 477
proxy_set_header X-Forwarded-For ;
Warning: Undefined variable $scheme in /www/wwwroot/littlefish/errorpage/index.php on line 478
proxy_set_header X-Forwarded-Proto ;
proxy_set_header X-Forwarded-Host aaa.fuxiaoyu.cn;
proxy_ssl_verify off;
proxy_connect_timeout 5s;
proxy_read_timeout 10s;
}
# 核心路由:无嵌套if,符合Nginx语法,直接触发404
location / {
Warning: Undefined variable $uri in /www/wwwroot/littlefish/errorpage/index.php on line 487
Warning: Undefined variable $uri in /www/wwwroot/littlefish/errorpage/index.php on line 487
try_files / =404;
}
# PHP文件单独处理,保证站点PHP程序正常运行
location ~ \.php$ {
Warning: Undefined variable $uri in /www/wwwroot/littlefish/errorpage/index.php on line 492
try_files =404;
fastcgi_pass unix:/tmp/php-cgi-82.sock;
fastcgi_index index.php;
include fastcgi.conf;
}
#PHP-INFO-START 保留宝塔原有PHP配置
include enable-php-82.conf;
#PHP-INFO-END
#REWRITE-START 保留宝塔伪静态规则引用
# 注释掉rewrite配置引用,避免文件不存在导致配置失败
# include /www/server/panel/vhost/rewrite/aaa.fuxiaoyu.cn.conf;
#REWRITE-END
# 禁止访问的敏感文件(保留宝塔原有规则)
location ~* (\.user.ini|\.htaccess|\.htpasswd|\.env.*|\.project|\.bashrc|\.bash_profile|\.bash_logout|\.DS_Store|\.gitignore|\.gitattributes|LICENSE|README\.md|CLAUDE\.md|CHANGELOG\.md|CHANGELOG|CONTRIBUTING\.md|TODO\.md|FAQ\.md|composer\.json|composer\.lock|package(-lock)?\.json|yarn\.lock|pnpm-lock\.yaml|\.\w+~|\.swp|\.swo|\.bak(up)?|\.old|\.tmp|\.temp|\.log|\.sql(\.gz)?|docker-compose\.yml|docker\.env|Dockerfile|\.csproj|\.sln|Cargo\.toml|Cargo\.lock|go\.mod|go\.sum|phpunit\.xml|phpunit\.xml|pom\.xml|build\.gradl|pyproject\.toml|requirements\.txt|application(-\w+)?\.(ya?ml|properties))$
{
return 404;
}
# 禁止访问的敏感目录(保留宝塔原有规则)
location ~* /(\.git|\.svn|\.bzr|\.vscode|\.claude|\.idea|\.ssh|\.github|\.npm|\.yarn|\.pnpm|\.cache|\.husky|\.turbo|\.next|\.nuxt|node_modules|runtime)/ {
return 404;
}
#一键申请SSL证书验证目录相关设置
location ~ \.well-known{
allow all;
}
#禁止在证书验证目录放入敏感文件
Warning: Undefined variable $uri in /www/wwwroot/littlefish/errorpage/index.php on line 524
if ( ~ "^/\.well-known/.*\.(php|jsp|py|js|css|lua|ts|go|zip|tar\.gz|rar|7z|sql|bak)$" ) {
return 403;
}
# 静态文件缓存规则(保留宝塔原有规则+监控)
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
expires 30d;
access_log /dev/null;
error_log /dev/null;
#Monitor-Config-Start 网站监控报表日志发送配置
access_log syslog:server=unix:/tmp/bt-monitor.sock,nohostname,tag=62__access monitor;
error_log syslog:server=unix:/tmp/bt-monitor.sock,nohostname,tag=62__error;
#Monitor-Config-End
}
# 静态文件缓存规则(保留宝塔原有规则+监控)
location ~ .*\.(js|css)?$
{
expires 12h;
access_log /dev/null;
error_log /dev/null;
#Monitor-Config-Start 网站监控报表日志发送配置
access_log syslog:server=unix:/tmp/bt-monitor.sock,nohostname,tag=62__access monitor;
error_log syslog:server=unix:/tmp/bt-monitor.sock,nohostname,tag=62__error;
#Monitor-Config-End
}
# 日志配置(保留宝塔原有规则)
access_log /www/wwwlogs/aaa.fuxiaoyu.cn.log;
error_log /www/wwwlogs/aaa.fuxiaoyu.cn.error.log;
#Monitor-Config-Start 网站监控报表日志发送配置
access_log syslog:server=unix:/tmp/bt-monitor.sock,nohostname,tag=62__access monitor;
error_log syslog:server=unix:/tmp/bt-monitor.sock,nohostname,tag=62__error;
#Monitor-Config-End
}