在网站发版时,总会有那么一小段时间服务是访问不通的,一般用户看到的都会是一个502的错误页面
那么可以通过nginx实现一个简单的通知页面,比如:
实现这个功能,只需要两步:
第一:编写“upgrading.html”
例如本例的“upgrading.html”
- <!DOCTYPE html>
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
- <meta charset="utf-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1">
- <title>张亚东博客</title>
- <link href="https://static.zhyd.me/static/img/favicon.ico" rel="shortcut icon" type="image/x-icon">
- <link href="https://cdn.bootcss.com/bootstrap/4.1.1/css/bootstrap.min.css" rel="stylesheet">
- </head>
- <body>
- <div class="container">
- <div class="row">
- <div class="col col-md-12 text-center">
- <div class="alert alert-success alert-dismissable" style="margin-top: 20px">
- <button type="button" class="close" data-dismiss="alert">×</button>
- <strong>网站正在维护!</strong> 请稍等一会,先听听歌吧~~
- </div>
- </div>
- </div>
- <div class="row">
- <div class="col col-md-12 text-center">
- <iframe frameborder="no" border="0" marginwidth="0" marginheight="0" width=330 height=450 src="https://music.163.com/outchain/player?type=0&id=879855523&auto=1&height=430"></iframe>
- </div>
- </div>
- </div>
- </body>
- </html>
-
第二:修改nginx配置文件
在server中增加如下配置:
- error_page 502 upgrading.html;
- error_page 503 upgrading.html;
- error_page 504 upgrading.html;
- location = /upgrading.html {
- root /usr/share/nginx/html;
- }
-
完整配置的格式如下:
- server {
- listen 80;
- server_name xxx;
-
- error_page 502 upgrading.html;
- error_page 503 upgrading.html;
- error_page 504 upgrading.html;
- location = /upgrading.html {
- root /usr/share/nginx/html;
- }
-
- location / {
- // ... 省略
- }
- }
-
这段代码的意思就是:当系统返回502、503或者504响应时,跳转到 upgrading.html页面。其中root 指向的是upgrading.html文件的目录。