Добрый вечер,
На одной из систем мы начали переходить с 0.6.7 на 1.2.4
Есть моменты, когда клиент посылает в один из хедеров (а точнее в Content-Type) какой-то спец символ/character, после получения которого nginx отсылает сразу 400.
Символ похож на 2 квадратные скобки, образующие вертикально стоящий прямоугольник, ближе к квадрату, что-то навроде этого [] (это 2 скобки, а сам символ как одно целое и шире)
Хотя, возможно это и не имеет значение как оно выглядит. Вроде это происходит когда что-то не на latin/utf-8 (и так интерпретируется.)
В любом случае ошибка выглядит так:
2012/10/17 12:51:46 [info] 25858#0: *549831 client sent invalid header line: "Content-Type: application/x-www-form-urlencoded
и потом идет список других хедеров и сама POST дата, и всё записано в логе. Можно и куки словить и все что угодно. Реквест сломался.
Т.е. nginx шлет 400, но другие и POST данные приходят по любому и записываются в логе (неправильный реквест)
Аналайзер показал что в реале сразу после blabla....urlencoded идет вышеупомянутый символ [] (слитно с хедером)
Так вот, в 0.6.7 без проблем работает всё из коробки.
А вот 1.2.х отсекает сразу с 400 и даже разрешение invalid headers не помогает
Это что-то стало слишком стрикт и ничего не поделать или можно заставить работать?
Пока что откатились на 0.6.7 к сожалению, а на других системах поставили ЕС2 прокси, которые это тоже игнорят.
Спасибо!