Hello!
On Tue, Mar 24, 2015 at 11:34:21AM +0300, Pavel Mihaduk wrote:
> Кстати, в связи с подчеркиваниями у меня давно вопрос: чего ради было делать
> дефолт именно таким, какой он есть? Мне в свое время это доставило немало
> головной боли с uwsgi, когда nginx выбрасывал REQUEST_METHOD :(
Потому что в рамках протокола CGI (используемого, в своих
вариациях, чуть менее, чем везде, включая переменные $http_... в
самом nginx'е) заголовки представляются в виде переменных с
именами HTTP_HEADER_NAME, и заголовки с подчёркиваниями - не
отличимы от заголовков со стандартным дефисом. Соответственно
заголовки с подчёркиванием могут быть использованы для того, чтобы
выдать их за какие-либо специальные заголовки (Content-Length,
X-Real-IP, whatever).
При этом в HTTP - не бывает стандартных заголовков с
подчёркиванием, и если вдруг подчёркивание встретилось - это
чья-то самодеятельность.
Формально, по стандарту HTTP - подчёркивание использовать можно,
это обычный символ. Но, в свете вышеизложенного, обрабатывать
такие заголовки и пропускать их на бекенды - плохая идея.
--
Maxim Dounin
http://nginx.org/
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru