Maison  >  Article  >  développement back-end  >  nginx 400 bad request errors

nginx 400 bad request errors

WBOY
WBOYoriginal
2016-08-08 09:32:511006parcourir

今天发现日志大量400错误

http1.1的标准规定请求必须包含头部信息,如果请求头为空那么web server直接返回400,详细可以看RFC文档RFC 2316, section 14.23

除了上面这种telnet方式可能造成空请求头外,当浏览器下载图片的同时点击别的链接,会关闭下载连接,也会出现空请求头,再或者机器人构造的空请求头访问。

去掉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。


以上就介绍了nginx 400 bad request errors,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:wdcp细节说明Article suivant:PHP数据结构(1) 二分查找