记录一下,以备查阅:
HTTP方法 | 评估结果 | 建议 | 说明 | 解决方案 |
HEAD | 安全 | 无 | 除了服务器不能在响应中返回消息体,HEAD 方法与 GET 相同。HEAD 请求的响应中的 HTTP 头部中包含的元信息应该与 GET 请求发送的响应中的信息相同。该方法可用来获取请求暗示实体的元信息,而不需要传输实体本身。该方法常用来测试超文本链接的有效性、可用性和最近的修改。 | |
TRACE | 危险 | 建议关闭 | TRACE 方法用于引起远程的,该请求消息的应用层回射。请求的最终接收者应该反射200(OK)响应,并以该消息作为客户端回收消息的实体。 | 将应用服务器中的TRACE谓词拒绝 |
GET | 安全 | 无 | GET 方法即获取由 Request-URI 标识的任何信息(以实体的形式)。如果 Request-URI 引用某个数据处理过程,则应该以它产生的数据作为在响应中的实体,而不是该过程的源代码文本,除非该过程碰巧输出该文本。 | |
PUT | 危险 | 建议关闭 | PUT 方法请求将封装的实体存储在指定的 Request-URI 下。如果 Request-URI 引用已存在的资源,该封装实体应该被认作最初服务器存储的修改版本。如果 Request-URI 没有指向已存在的资源,且该 URI 可以被请求的用户代理定义为新的资源,则最初服务器可以用该URI创建资源。 | 将应用服务器中的PUT谓词拒绝 |
POST | 安全 | 无 | POST 方法用来请求最初服务器接受请求中封装的实体作为从属于请求行中的 Request-URI 标识的附属。 | |
OPTIONS | 安全(已关闭) | 无 | OPTIONS 方法表示在由 Request-URI 标识的请求/响应链上关于有效通讯选项信息的请求。该方法允许客户端判断与某个资源相关的选项和/或需求或者服务器的能力,而不需要采用资源行为或发起资源获取。 | |
DELETE | 危险 | 建议关闭 | DELETE 方法请求最初服务器删除 Request-URI 标识的资源。最初服务器可在人为干涉下(或其它意思)屏蔽该方法。客户端不能确保该操作已提交,即使最初服务器发出的状态码表明动作已成功完成也如此。然而,在给出响应的时候,服务器不应该表示成功,除非它试图删除该资源或将它移动到不可访问的位置。 | 将应用服务器中的DELETE谓词拒绝 |
nginx location 节点中配置:
limit_except GET POST {
deny all;
}
要特别注意的是
GET已经包含HEAD
还有就是limit_except的意思是”限制除了“也就是允许啦。
上面的意思是限制除了GET POST外的所有谓词
官方文档:http://nginx.org/en/docs/http/ngx_http_core_module.html#limit_except