当我们访问一下Ngin部署的网站时,如果访问一个不存在的资源时,默认服务端会返回404错误,如下所示
其实这个页面,我们也是可以自己创建一个页面作为404的返回的,可以通过
即可以通过error_page code
... [=
[response
]] uri
; 进行配置
其他说明: 关于error_page指定能写的位置段为:http, server, location, if in location
当然笔者是建议配置到单独的server,有些情况也可以配置到location中,这样不影响其他server
一个很经典的配置,可以当客户端访问得到404错误页面是,可以返回给他们首页 -(当然创建一个新的页面也可以的),方法如下:
error_page 404 /index.html;
但是这样,也还有一个小问题,就是404页面,我们虽然指定了,但是通过开发者工具或者curl -I 的方式还是能看到 HTTP/1.1 404 Not Found 的响应
如果需要连code也隐藏,可以将404设置为200成功的响应,再为其配置一个单独的页面,如下配置即可:
error_page 404 =200 /index.html;
语法要求如下,注意空格,和=200要求是一个整体,这样配置下来,对于外部,即使访问的不存在的资源,也会指向到首页,而且还隐藏了404错误的http code
并返回:HTTP/1.1 200 OK , 这样我们对于信息的暴露又少了一点,页面对于普通用户来说,也更加的友好了
尊重别人的劳动成果 转载请务必注明出处:https://www.cnblogs.com/5201351/p/17341543.html
标签:web,http,200,配置,Nginx,404,error,page,页面 From: https://www.cnblogs.com/5201351/p/17341543.html