当前位置: 首页 > 编程笔记 >

nginx服务器access日志中大量400 bad request错误的解决方法

郎慎之
2023-03-14
本文向大家介绍nginx服务器access日志中大量400 bad request错误的解决方法,包括了nginx服务器access日志中大量400 bad request错误的解决方法的使用技巧和注意事项,需要的朋友参考一下

在access.log中有大量400错误,并以每天几百M的速度增加,占用大量空间.


tail -f /opt/nginx/logs/access.log

    116.236.228.180 - - [15/Dec/2010:11:00:15 +0800] "-" 400 0 "-" "-"     116.236.228.180 - - [15/Dec/2010:11:00:15 +0800] "-" 400 0 "-" "-"     116.236.228.180 - - [15/Dec/2010:11:00:15 +0800] "-" 400 0 "-" "-"     116.236.228.180 - - [15/Dec/2010:11:00:15 +0800] "-" 400 0 "-" "-"     116.236.228.180 - - [15/Dec/2010:11:00:15 +0800] "-" 400 0 "-" "-"     119.97.196.7 - - [15/Dec/2010:11:00:16 +0800] "-" 400 0 "-" "-"     119.97.196.7 - - [15/Dec/2010:11:00:16 +0800] "-" 400 0 "-" "-"     116.236.228.180 - - [15/Dec/2010:11:00:16 +0800] "-" 400 0 "-" "-"     116.236.228.180 - - [15/Dec/2010:11:00:16 +0800] "-" 400 0 "-" "-"     116.236.228.180 - - [15/Dec/2010:11:00:16 +0800] "-" 400 0 "-" "-"     116.236.228.180 - - [15/Dec/2010:11:00:16 +0800] "-" 400 0 "-" "-"     116.236.228.180 - - [15/Dec/2010:11:00:16 +0800] "-" 400 0 "-" "-"     116.236.228.180 - - [15/Dec/2010:11:00:16 +0800] "-" 400 0 "-" "-"     116.236.228.180 - - [15/Dec/2010:11:00:16 +0800] "-" 400 0 "-" "-"     116.236.228.180 - - [15/Dec/2010:11:00:16 +0800] "-" 400 0 "-" "-"     219.243.95.197 - - [15/Dec/2010:11:00:16 +0800] "-" 400 0 "-" "-"     116.236.228.180 - - [15/Dec/2010:11:00:16 +0800] "-" 400 0 "-" "-"     116.236.228.180 - - [15/Dec/2010:11:00:16 +0800] "-" 400 0 "-" "-"


网上大把的文章说是HTTP头/Cookie过大引起的,可以修改nginx.conf中两参数来修正.

    client_header_buffer_size 16k;

          large_client_header_buffers 4 32k;


修改后

    client_header_buffer_size 64k;

         large_client_header_buffers 4 64k;


没有效果,就算我把nginx0.7.62升到最新的0.8.54也没能解决.
在官方论坛中nginx作者提到空主机头不会返回自定义的状态码,是返回400错误.
http://forum.nginx.org/read.php?2,9695,11560

最后修正如下
改为原先的值


    client_header_buffer_size 16k;

         large_client_header_buffers 4 32k;


关闭默认主机的日志记录就可以解决问题

    server {

    listen *:80 default;

    server_name _;

    return 444;

    access_log   off;

    }

 类似资料:
  • 本文向大家介绍Nginx服务器中414错误和504错误的配置解决方法,包括了Nginx服务器中414错误和504错误的配置解决方法的使用技巧和注意事项,需要的朋友参考一下 414 Request-URI Too Large 当http 的URI太长或者request header过大时会报414 Request URI too large或400 bad request错误。 可能原因 场景1.c

  • 本文向大家介绍Linux服务器nginx访问日志里出现大量http 400错误的请求分析,包括了Linux服务器nginx访问日志里出现大量http 400错误的请求分析的使用技巧和注意事项,需要的朋友参考一下 服务器中的错误记录类似于这种: 124.65.133.242 – – [27/Oct/2014:14:30:51 +0800] “-” 400 0 “-” “-” 124.65.133.2

  • 本文向大家介绍nginx服务器中access_log日志分析与配置详解,包括了nginx服务器中access_log日志分析与配置详解的使用技巧和注意事项,需要的朋友参考一下 前言 nginx的log日志分为:access log 和 error log 其中access log 记录了哪些用户,哪些页面以及用户浏览器、ip和其他的访问信息 error log 则是记录服务器错误日志 log_fo

  • 本文向大家介绍解决ASP.NET中"/"应用程序中的服务器错误的方法,包括了解决ASP.NET中"/"应用程序中的服务器错误的方法的使用技巧和注意事项,需要的朋友参考一下  学习asp.net中讲解验证控件问题时,我的程序运行时总是提示这样的问题:”/”应用程序中的服务器错误。如下图:     从网上找到了相关的方法:  在webconfig中找到 然后删除<addkey="ValidationS

  • 描述: 提交大数据查询操作,会在2min内出现504报错(时间不定,有时候是1.5min有时候是1.6min) nginx与gunicorn超时时间同样是600,测试环境设置相同timeout等未复现此问题(不过测试环境未与正式环境100%一致,没有gunicorn),可以执行到4-5分钟乃至更长 nginx error中没有504错误日志 问题:什么原因导致504,往哪个方向大概率复现 技术:

  • 本文向大家介绍MongoDB日志文件过大的解决方法,包括了MongoDB日志文件过大的解决方法的使用技巧和注意事项,需要的朋友参考一下 MongoDB的日志文件在设置 logappend=true 的情况下,会不断向同一日志文件追加的,时间长了,自然变得非常大。 解决如下:(特别注意:启动的时候必须是--logpath指定了log路径的) 用mongo连接到服务端 这样会使mongo关闭当前日志文