最新要闻

广告

手机

iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?

iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?

警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案

警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案

家电

关于Nginx作为http-web服务器时对404错误页面的配置-以及安全加固-隐藏404的状态码

来源:博客园

当我们访问一下Ngin部署的网站时,如果访问一个不存在的资源时,默认服务端会返回404错误,如下所示

其实这个页面,我们也是可以自己创建一个页面作为404的返回的,可以通过


(相关资料图)

即可以通过error_pagecode... [=[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

关键词: