• Nginx 对客户端请求的特殊处理


    本文记录Nginx静态web服务器对于客户端请求的特殊处理的配置项。
     
    1. 忽略不合法的HTTP头部
    语法:ignore_invalid_headers on|off;
    默认:ignore_invalid_headers on;
    配置块:http、server
    该配置值为off时,Nginx会拒绝HTTP头部不合法的请求,直接返回400(Bad Request)错误。
     
    2.HTTP头部是否允许下划线
    语法:underscores_in_headers on|off;
    默认:underscores_in_headers off;
    配置块:http、server
    默认为off,HTTP头部名称不允许带下划线。
     
    3.对If-Modified-Since头部处理策略
    语法:if_modified_since[off|exact|before];
    默认:if_modified_since exact;
    配置块:http、server、location
    为了提高性能,web浏览器一般会在本地缓存一些文件,并且保存当时获取的时间。这样,向web服务器获取缓存过的资源时,可以用If-Modified-Since头部将上次获取的时间带上,Nginx服务器会根据配置值决定如何处理If-Modified-Since头部。
    参数介绍:
    off:表示忽略请求中的If-Modified-Since头部,这时获取一个文件,将会正常返回文件内容。
    exact:将请求中的时间与服务器上文件的修改时间进行比较,如果没有匹配上,返回200和文件实际内容。匹配上了的话,直接返回304-Not Modified,浏览器将会直接读取自己的本地缓存。
    before:比exact更加宽松,只要服务器上修改时间大于请求中的时间,就会返回304.
     
    4.文件未找到时是否记录到error日志
    语法:log_not_found on|off;
    默认:log_not_found on;
    配置块:http、server、location
     
    5.merge_slashes
    语法:merge_slashes on|off;
    默认:merge_slashes on;
    配置块:http、server、location
    该配置项表示是否合并相邻的“”,如/test///a.txt,当该配置值为on时,将会将其匹配为location/test/a.txt;如果是off,就还是/test///a.txt。
     
    6.DNS解析地址
    语法:resolver address...;
    配置块:http、server、location
    设置DNS名字解析服务器的地址,如:
    resolver 127.0.0.1 192.0.2.1;
    
    7.DNS解析超时时间
    语法:resolver_timeout time;
    默认:resolver_timeout 30s;
    配置块:http、server、location
     
    8.返回错误页面是是否在Server中注明Nginx版本
    语法:server_tokens on|off;
    默认:server_tokens on;
    配置块:http、server、location
  • 相关阅读:
    愿你始终不移真心
    beautiful sentences
    (转)Design Pattern 新解(非常经典贴近生活)
    简述.Net下的应用程序授权。(转)
    thin的调试汇集
    Asp.net1.0 升级 ASP.NET 2.0 的几个问题总结 (转)
    Microsoft .NET Pet Shop 4 架构与技术分析 (转)
    面向对象编程,我的思想[上](转)
    七个问题:经济学常识 (转),真的很好,值的思考
    .NET控件收集(转)
  • 原文地址:https://www.cnblogs.com/52why/p/13292731.html
Copyright © 2020-2023  润新知