proxy_pass www-encoding bug

Mihal K mozilla_bugs at mail.ru
Fri Sep 5 14:50:19 MSD 2008


Alex Vorona wrote:
> 31.07.2008 20:31, MZ wrote:
>> nginx 0.6.32:
>> если использовать proxy_pass http://somadomain.com (без указания uri)
>> то в случае если исходный uri включал в себя пробел (закодированый) -
>> nginx этот пробел раскодирует и передает в исходном виде:
>>
>> GET /original uri with space HTTP/1.0
>> Host: somedomain.com
>> Connection: close
>>
>> ну и с бекенда возвращается соотв
>>
>> HTTP/1.1 400 Bad Request
>>
>> на nginx 0.5.35 такой проблемы нет - он кодирует запрос перед передачей
>> на бекенд:
>>
>> GET /original%20uri%20with%20space HTTP/1.0
> 
> также наблюдаю раскодирование uri и args в fastcgi_pass, 0.7.7, тоже мало приятного.
> Игорь, возможно стОит сделать выбор, раскодировать или нет?

Аналогично, обновился до 0.6.32 и наткнулся на это. Не только
fastcgi_pass, после rewrite в скопированных аргументах ($1, $2, ...)
тоже будут раскодированные данные.

Похоже, это поменялось в 0.6.27:

...
Исправление: ошибки при копировании части URI, содержащего
экранированные символы, в аргументы.
...

Может правда вынести это в конфиг файл?





More information about the nginx-ru mailing list