0°

Nginx 自定义错误页面

当客户端输错网址的时候,Nginx默认会返回 “NotFount” 404 页面,默认的不太好看,我们可以自定义404页面,或者做其它操作

error_page code ... [=[response]] uri;
错误页面,
Syntax: error_page code ... [=[response]] uri;
Context:    http, server, location, if in location

自定义404页面

1.自定义错误页面

        error_page 404 /notfound.html;
        location =/notfound.html {
            root /usr/local/nginx/html/error_pages;
        }

error_page          #特定参数
404               #指定状态码
/notfount.html    #指定uri
如果你访问的请求响应为 404 ,那么将我们定义的 uri 返回给客户端 /notfound.html 页面

location 进行匹配,如果你访问的页面是 notfountd.html ,那么将到 location 中 root 指令定义的路径中寻找 notfount.html 文件并返回给客户端。
如果不写location,那么将默认去 server 配置段中寻找root指定的网站目录下的 notfound.html

2.创建错误文件

mkdir /usr/local/nginx/html/error_pages
cat /usr/local/nginx/html/error_pages/notfound.html
<center> <h1>你访问的页面不存在<h1> </center>

3.测试访问一个不存在的页面

自定义500页面

1.自定义500页面与404一致
只是这里指定多个50x的状态码进行返回同一个页面

        error_page 500 502 503 504  /50x.html;
        location =/50x.html {
            root /usr/local/nginx/html/error_pages;
        }

2.创建错误文件

cat /usr/local/nginx/html/error_pages/50x.html
<center> <h1>服务器好像有故障<h1> </center>

3.测试访问
为了演示一个错误页面,我们需要加一个相对应的locaiton来证明实验成功

        error_page 500 502 503 504  /50x.html;
        location =/50x.html {
            root /usr/local/nginx/html/error_pages;
        }

        location  /500 {
            return 500;
        }

        location  /502 {
            return 502;
        }

        location  /503 {
            return 503;
        }

        location  /504 {
            return 504;
        }

访问对应的地址然后nginx返回相应的状态码,状态码和定义的 error_page 匹配以后返回对应的错误页面



修改错误码

需求是把404页面定义到网站首页,然后返回状态码200

#修改状态码为200,然后指定跳转页面
error_page 404 =200  https://k8sops.cn;

#修改状态码为301,然后指定跳转页面
error_page 404 =301  https://k8sops.cn;






「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
0 条回复 A 作者 M 管理员
    所有的伟大,都源于一个勇敢的开始!
欢迎您,新朋友,感谢参与互动!欢迎您 {{author}},您在本站有{{commentsCount}}条评论