Welcome! Log In Create A New Profile

Advanced

ошибки с 400 кодом логгируются в чужой access.log

July 04, 2012 08:05AM
Всем привет.

Столкнулся со странной проблемой на одном из фронтэндов. Есть несколько вируальных хостов, для упрощения возьмем host1 и host2

При запросах host1, ошибки вида:

91.143.38.134 - - [04/Jul/2012:15:27:34 +0400] "-" 400 0 "-" "-" "-"
188.19.97.96 - - [04/Jul/2012:15:27:34 +0400] "-" 400 0 "-" "-" "-"
85.117.224.56 - - [04/Jul/2012:15:27:34 +0400] "-" 400 0 "-" "-" "-"
217.132.37.176 - - [04/Jul/2012:15:27:34 +0400] "-" 400 0 "-" "-" "-"

пишутся в access лог host2

Причем в error логе host2 это отображается так

2012/07/04 15:27:34 [info] 1892#0: *171499 client prematurely closed connection while reading client request line, client: 91.143.38.134, server: host2
2012/07/04 15:27:34 [info] 1886#0: *167326 client prematurely closed connection while reading client request line, client: 188.19.97.96, server: host2
2012/07/04 15:27:34 [info] 1890#0: *173368 client prematurely closed connection while reading client request line, client: 85.117.224.56, server: host2
2012/07/04 15:27:34 [info] 1890#0: *171609 client prematurely closed connection while reading client request line, client: 217.132.37.176, server: host2

Если я правильно понимаю, то это свидетельствует о коннекте клиента к host2 с последующим закрытием соединения? Но на host1 никаких упоминаний о host2 нет.
Юзерагенты у клиентов разные. Пользователи легитимные. host1 при запросе отдал им 200 код.

Конфиг host1. Некоторые локейшены я убрал, поскольку они вида location /some { root /home/www/host1; index index.htm;} и только затрудняют чтение конфига.

server {
listen <ip>;
server_name host1 www.host1;

access_log /var/log/nginx/frontend-host1/access.log main;
error_log /var/log/nginx/frontend-host1/error.log notice;

root /home/www/host1;
ssi on;
gzip_static off;
gzip off;
charset windows-1251;
sendfile on;
ssi_value_length 200k;

include /etc/nginx/deny.conf;

location / {

proxy_cache main-cache;
proxy_cache_valid 200 302 301 304 3s;
proxy_cache_key "$request_method|$http_if_modified_since|$http_if_none_match|$host|$uri";
proxy_hide_header "Set-Cookie";
proxy_ignore_headers "Cache-Control" "Expires";

proxy_cache_lock on;

include /etc/nginx/proxy_params;

proxy_set_header Host "host1";
proxy_pass http://<backend ip>;
}

Конфиг host2 приводить смысла нет, поскольку, если например убираешь его из конфигурации, то сообщения о 400 ошибке начинают логироваться в другой hostN с другой конфигурацией.

Может, уважаемое сообщество подскажет, в каком направлении копать?

Спасибо.
Subject Author Posted

ошибки с 400 кодом логгируются в чужой access.log

ddr400 July 04, 2012 08:05AM

Re: ошибки с 400 кодом логгируются в чужой access.log

Maxim Dounin July 04, 2012 08:12AM

Re: ошибки с 400 кодом логгируются в чужой access.log

ddr400 July 05, 2012 07:10AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 309
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready