On Tuesday 17 June 2014 18:05:15 S.A.N wrote: > Валентин Бартенев Wrote: > ------------------------------------------------------- > > Как уже неоднократно в этой ветке говорилось, nginx в параметрах > > HTTP_* пишет > > ровно то, что от него требуется: заголовки, пришедшие от клиента, в > > том виде, > > в котором они получены. > > Nginx так и должен делать, если запрос валидный, а инвалидные запросы на > бекенд передавать не имеет никакого смысла, они не несут в себе полезной > нагрузки (payload) для бекенда. [..]
Вы подменяете понятия. Пока ещё никто из дискутирующих не смог привести аргументов за то, что такие запросы не являются валидными. Попытки ссылаться на требования к клиенту и склонять спецификацию так, как того хочется - результата точно не принесут. Это с точки зрения вашего конкретного бэкенда запрос не валиден, nginx же вполне справляется с его обработкой, как в общем-то и многие другие сервера. Можете предложить исправить "баг" на ietf.org: $ netcat ietf.org 80 HEAD http://www.ietf.org/ HTTP/1.1 Host: example.com Host: example.org HTTP/1.1 200 OK Date: Wed, 18 Jun 2014 07:49:22 GMT Server: Apache Last-Modified: Thu, 05 Jun 2014 15:47:35 GMT ETag: "884603a-49c4-4fb18a9ec37a4" Accept-Ranges: bytes Content-Length: 18884 Vary: Accept-Encoding Content-Type: text/html или на apache.org: $ netcat apache.org 80 HEAD http://www.apache.org/ HTTP/1.1 Host: example.com Host: example.org HTTP/1.1 200 OK Date: Wed, 18 Jun 2014 07:49:57 GMT Server: Apache/2.4.9 (Unix) mod_wsgi/3.4 Python/2.7.5 OpenSSL/1.0.1h Last-Modified: Sun, 15 Jun 2014 09:10:45 GMT ETag: "a250-4fbdc492d0221" Accept-Ranges: bytes Content-Length: 41552 Vary: Accept-Encoding Cache-Control: max-age=3600 Expires: Wed, 18 Jun 2014 08:49:57 GMT Content-Type: text/html; charset=utf-8 или на google.com в конце-концов: $ netcat google.com 80 HEAD http://google.com/ HTTP/1.1 Host: example.com Host: example.org HTTP/1.1 302 Found Cache-Control: private Content-Type: text/html; charset=UTF-8 Location: http://www.google.ru/?gfe_rd=cr&ei=wkShU4e1GM-A4AS4poHoDg Content-Length: 258 Date: Wed, 18 Jun 2014 07:50:26 GMT Server: GFE/2.0 Alternate-Protocol: 80:quic > По этому, мы разработчики бекенда хотели бы чтобы Nginx не передавал нам > инвалидные запросы, а отдавал 400 статус. > [..] Список "инвалидных запросов" в студию. Завтра придут просить запретить запрос к /private/, поскольку с точки зрения некоторого бэкенда он не валиден. -- Валентин Бартенев _______________________________________________ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru