Hello! On Mon, Feb 26, 2018 at 04:46:34PM +0100, Yury Lyakh wrote:
> > День добрый всем, > > не подскажет ли сообщество, в каких случаях nginx может писать в лог GET с > таким раскладом: > $response_code == 200 > $body_bytes_sent == 0 > $bytes_sent != 0 > > выдача из кеша (впрочем такая же картина и при MISS с хождением в бэкенд, > есть ощущение что это связано с поведением пользователя в первую очередь): > > "83.6.141.89" "-" "-" "[15/Feb/2018:14:37:24 +0000]" "GET > /hls-vod/mjxCYlUG8gQh4WApAv94JA/1518726762/120/0x500003970b782deb/e58180d4dc134dd8a440d56214dbf890.mp4Frag6Num5.ts > HTTP/2.0" "200" "0" "https://rube.ru/play/embed/10936010 > <http://rube.ru/play/embed/10936010>" "Mozilla/5.0 (iPhone; CPU iPhone OS > 11_2_2 like Mac OS X) AppleWebKit/604.4.7 (KHTML, like Gecko) Version/11.0 > Mobile/15C202 Safari/604.1" "257" "-" "https" "c.rube.ru <http://c.rube.ru/>" > "60.000" "-" "95" "-" "HIT" "-" "-" "645" "2038" > > "85.172.79.11" "-" "-" "[26/Feb/2018:15:01:22 +0000]" "GET > /hls-vod/idSHrOHQR97_xWvsyJve1g/1519677788/119/0x500003970b8815d3/cead5d5a8e6a4e0bb99c5ea4244bc4b6.mp4Frag158Num158.ts > HTTP/2.0" "200" "0" > "https://rube.ru/play/embed/10878914?wmode=opaque&playlist=1&fakeFullscreen=1 > <https://rube.ru/play/embed/10878914?wmode=opaque&playlist=1&fakeFullscreen=1>" > "Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like > Gecko) Chrome/64.0.3282.167 Safari/537.36" "235" "-" "https" "c.rube.ru > <http://c.rube.ru/>" "19.907" "-" "98" "-" "HIT" "-" "-" "645" "2038" > > здесь построчно соответственно поля равны: > 200, 0, 257 > 200, 0, 235 > > То есть соединение корректно закрылось сразу после получения заголовков, от > body клиент отмахался, не стал принимать? > Если бы был HEAD запрос я бы еще понял что происходит, но тут GET. В случае GET существует также более одного способа получить заголовок, но не получать тело. В данном случае, с учётом использования HTTP/2, я бы предположил, что клиент присылает RST_STREAM после получения заголовка. В error log'е при этом на уровне info будут детали, что-нибудь вроде "client canceled stream..." или "client terminated stream...", в зависимости от конкретных причин закрытия запроса. Впрочем, может быть и просто закрыто соединение - в error log'е, опять же, будут детали на уровне info. -- Maxim Dounin http://mdounin.ru/ _______________________________________________ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru