所幸在nginx中是有办法解决这个问题:
在nginx.conf中,将client_header_buffer_size和large_client_header_buffers都调大,可缓解此问题。
client_header_buffer_size:默认是1k,所以header小于1k的话是不会出现问题的。
large_client_header_buffers:该命令用于设置客户端请求的Header头缓冲区的大小,默认值为4KB。客户端请求行不能超过large_client_header_buffers指令设置的值,客户端请求的Header头信息不能大于large_client_header_buffers指令设置的缓冲区大小,否则会报“Request URL too large”(414)或者“Bad-request”(400)错误,如果客户端Cookie信息较大,则须增加缓冲区大小。
现在配置是:
client_header_buffer_size 128k; large_client_header_buffers 4 128k; 去掉access日志中的400方法
0.7.12以前版本的nginx收到一个空请求,nginx不会去与任何虚拟主机匹配,直接返回400错误,
之后的新版本nginx可以用server_name _;匹配空请求头。
所以如果用的旧版本先升级到0.7.12以后的版本
升级之后添加如下默认虚拟主机server。
增加默认的server到配置文件,以下配置的解释看这里禁止未绑定域名访问
server { listen 80 default_server; server_name _; return 404; access_log off; }
建议把上面这个server保存为default.conf,然后include到主配置文件nginx.conf
Tplink企业版路由器WiFi名称的默认设置介绍(Tplink企业版路由器WiFi名称的默认设置是什么)
Tplink路由器灯常亮无法上网的原因分析(如何解决Tplink路由器灯常亮无法上网的问题)
Tplink千兆企业级路由器自动重启的作用和优势介绍(如何设置Tplink千兆企业级路由器自动重启功能)
一根天线的tplink路由器有哪些(一根天线的Tplink路由器的特点和优势介绍)
tplink路由器外网访问不了nas(Tplink路由器外网访问NAS的原因分析)
Tplink无法搜到路由器的原因分析(如何解决Tplink无法搜到路由器的问题)