Nginx 设置临时维护页面

时间:2024-10-07 07:15:14

目录

  • Nginx 设置临时维护页面
    • 对于简单的页面 rewrite
      • 使用状态码
    • 对于简单的页面 rewrite
      • 使用状态码

Nginx 设置临时维护页面

nginx维护页面处理-全部URL指向同一个页面
一般来说nginx的维护页面需要把所有访问本站的链接全部重定向到某个指定页面

对于简单的页面 rewrite

将一下语句加在最后即可
rewrite ^(.*)$ / break;
注意这句后面如果有重定向等语句,那么后面执行的重定向等语句需要全部注释掉

使用状态码

修改 nginx 的 conf 文件,例如

       location / {
            # return 502;
            root /home/blog/frontend/dist;
            try_files $uri $uri/ /;
            index  ;
        }

        location /back {
            # return 502;
            alias /home/blog/frontend/back/dist;
            try_files $uri $uri/ /;
            index  ;
        }

        location /update {
            alias /home/blog/update;
            try_files $uri $uri/ /;
            index  ;
        }

        error_page 404 /;
            location = / {
        }

        error_page 500 502 503 504 @tempdown;
        location @tempdown {
            rewrite ^(.*)$ /update break;
        }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28

注意在最后一个代码块中,所有的 50x 错误都被转跳到了 /update 的路径下
在实际使用中,可以在 /update 的路径下部署静态网页元素,当需要进行网站升级时所有的路径都返回 50x 代码(去掉注释符即可)转跳到 /update 路径下# Nginx 设置临时维护页面

nginx维护页面处理-全部URL指向同一个页面
一般来说nginx的维护页面需要把所有访问本站的链接全部重定向到某个指定页面

对于简单的页面 rewrite

将一下语句加在最后即可
rewrite ^(.*)$ / break;
注意这句后面如果有重定向等语句,那么后面执行的重定向等语句需要全部注释掉

使用状态码

修改 nginx 的 conf 文件,例如

      location / {
            # return 502;
            root /home/blog/frontend/dist;
            try_files $uri $uri/ /;
            index  ;
        }

        location /back {
            # return 502;
            alias /home/blog/frontend/back/dist;
            try_files $uri $uri/ /;
            index  ;
        }

        location /update {
            alias /home/blog/update;
            try_files $uri $uri/ /;
            index  ;
        }

        error_page 404 /;
            location = / {
        }

        error_page 500 502 503 504 @tempdown;
        location @tempdown {
            rewrite ^(.*)$ /update break;
        }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28

注意在最后一个代码块中,所有的 50x 错误都被转跳到了 /update 的路径下
在实际使用中,可以在 /update 的路径下部署静态网页元素,当需要进行网站升级时所有的路径都返回 50x 代码(去掉注释符即可)转跳到 /update 路径下