Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Ошибка в SSI encoding
Hello!
On Thu, Apr 09, 2009 at 11:44:24AM +0400, Igor Sysoev wrote:
> On Thu, Apr 09, 2009 at 11:21:36AM +0400, Илья Винокуров wrote:
>
> > > > Это регулируется уже не RFC1738.
> > > указанный вами RFC разделители для searchpart тоже не регулирует.
> >
> > Как я Вас понял, Андрей, Вы не хотите, чтобы nginx при разборе параметров
> > учитывал и ';'?
> >
> > Это религиозная позиция?
>
> Это позиция здравого смысла. Есть стандарт, которому, к счастью,
> практически все следуют. Вот я сейчас запросил в Firefox'е
> "/page?one=1;two=2", оно в таком виде и пришло в сервер без всяких %XX.
> И как оно должно интепретироваться - как one="1;two=2" или как one=1 и two=2 ?
Если ты запросишь в Firefox'е "/page?one=1&two=2" - оно тоже
придёт на сервер без всяких %XX. Задачи escaping'а адреса целиком
и конкретного компонента query string - разные, и одновременно они не
рашаются.
Что до использование '&' и/или ';' как разделителя в query_string -
то это вопрос исключительно соглашения. Единственный известный мне
стандарт, который утверждает что использовать надо '&' - это HTML
(и утверждает он это исключительно для form submission, и ничего
больше). При этом в том же HTML рекомендуется поддерживать также ';',
см. http://www.w3.org/TR/html401/appendix/notes.html#h-B.2.2.
Во всяких "ручных" ссылках из wml/xml/xhtml сейчас ';' применяется
достаточно широко, и из стандартных библиотек его поддерживает как
минимум перловый CGI.pm.
Maxim Dounin
|