在过去的几个小时里,我的生产服务器每秒收到大约 6000 个未知请求,而 nginx 访问日志没有提供有关这些请求的足够数据。我从未在访问日志中看到过这样的请求,也不知道如何找到有关这些请求的更多信息。以下是这些请求的一个示例。
5.112.127.138 - - [14/Jun/2018:14:20:48 +0430] "o\xEB\x04Ke\xBA\xF6\x10\xCD\xB4\xAE\x17^\x9B\xFCgLp\xD0L\xBF\xDA\xE8\xE7K\x8C}\x8B\xEFM\xE4\xAF3>\xBDp\xDCy\x90\xCD\x1C\x16a\xEFn\xC6T\xE6\xB1\xF8\x10\x07umn\xA3" 400 173 "-" "-"
5.235.234.134 - - [14/Jun/2018:14:20:48 +0430] "\xA6\xCA#\x89\xFF1\xAE" 400 173 "-" "-"
我检查了结果谁是其中很多 IP 都是来自我国常见的 ISP 的 IP。具体来说,如果我能找出这些请求的目标地址,那将非常有用。
答案1
您的访问日志显示默认日志格式。请参阅这个文件了解详情。
您可以使用配置块中的log_format
and/oraccess_log
指令来定制日志格式()。http
nginx
nginx.conf
例如,要添加Host
请求标头($http_host`)的值,您可以使用:
log_format enhanced
'$remote_addr - $remote_user [$time_local] '
'$http_host "$request" $status $body_bytes_sent '
'"$http_referer" "$http_user_agent"';
access_log /path/to/logfiles/enhanced.log enhanced;