Nginx没有在@Maintenance指令下加载自定义维护页面?

yizd12fk  于 2022-10-06  发布在  Nginx
关注(0)|答案(1)|浏览(178)

当系统上存在维护文件时,我正在尝试使用Nginx重定向到一个自定义维护页面,该页面具有自己的css/JS。然而,它只向我显示了标准的Nginx 503重定向页面?

location / {
        if (-f /var/www/html/maintenance_mode_on){
            return 503;
        }
        root /var/www/html/my_normal_site/;
        index index.html index.htm;
}
error_page 503 @maintenance;
location @maintenance {
        root /var/www/html/maintenance/;
        index maintenance.html;
}
iyfamqjs

iyfamqjs1#

使用稍微不同的方法可能更好,例如:

error_page 503 /maintenance/;
location /maintenance/ {
    root /var/www/html;
}
location = /maintenance/ {
    internal;
    root /var/www/html;
    index maintenance.html;
}
location = /maintenance/maintenance.html {
    internal;
    root /var/www/html;
}

与前面一样,返回的html文档将带有503错误代码。

但任何资源文件都可以使用相对URL(例如css/example.css)

或使用绝对URL(例如/maintenance/css/example.css)

相关问题