一、error_page
1.跳转到指定页面
解释:其原理是响应到错误代码后,导向指定的路由,然后再由指定的路由处理,如下当错误代码是404时,相当于访问http://localhost:80/50x.html
,正好被内部传送给 location = /50x.html
让其来进行处理(需要注意必须有50x.html
这个页面)
error_page 404 403 500 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
2.跳转到指定网址
解释:其原理是响应到错误代码后,302(临时重定向到目标网址),如下当错误代码为404时,导向https://www.baidu.com
error_page 404 403 500 https://www.baidu.com;
3.更改反馈状态码
解释:本来遇到404找不到文件的错误,但是nginx可以把它状态码改为200返回给用户(例子如下)
error_page 404 =200 /50x.html;#注意这里的缩进不是随便的
location = /50x.html {
root /usr/share/nginx/html;
}
二、应用
1.寻找错误码对应的文件
解释:error_page后面跟的/error/404.html
就相当于其访问http://localhost:80/error/404.html
其被location /error
捕获
error_page 404 /error/404.html;
error_page 403 /error/403.html;
location /error {
alias /var/www/html;
}