Nginx单一客户端请求始终返回503且无日志记录的问题咨询
Nginx单一客户端请求始终返回503且无日志记录的问题咨询
各位好,我最近碰到个特别费解的Nginx问题,想请大家帮忙分析下:
我有两个客户端,IP分别是x.x.x.1和y.y.y.2,它们都访问我站点上的同一个接口/foo/bar。目前的情况是,x.x.x.1的所有请求不管成功还是失败,日志里都能正常看到:
- x.x.x.1 [日期] GET /foo/bar 200
- x.x.x.1 [日期] GET /foo/x 404
- x.x.x.1 [日期] GET /foo/testing_503_response 503
但y.y.y.2访问/foo/bar返回503状态码的时候,这条请求完全不会出现在Nginx日志里,就像从没发生过一样:
- y.y.y.2 [日期] GET /foo/bar 503 # 这条记录根本不会被日志捕获
我已经通过防火墙确认,两个客户端的请求都成功到达了我的VM上,没有被拦截。那为什么部分错误请求不会被Nginx记录呢?
我的Nginx配置其实很简单,贴出来给大家参考:
server { listen 443 default_server ssl; server_name api.example.com; ssl_certificate /etc/ssl/example.com.crt; ssl_certificate_key /etc/ssl/private/example.com.key; ssl_protocols TLSv1.3; }
另外补充一点:如果我专门创建一个始终返回5xx状态码的测试端点,用y.y.y.2这个客户端去访问,同样会出现返回错误状态码,但Nginx完全不记录这条请求的情况。
备注:内容来源于stack exchange,提问作者JK01




