ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: 0.7.63 и выдача flv



2009/12/18 Igor Sysoev <igor@xxxxxxxxx>:
> On Fri, Dec 18, 2009 at 02:25:20PM +0300, Sergey Shepelev wrote:
>
>> 2009/12/18 Igor Sysoev <igor@xxxxxxxxx>:
>> > On Fri, Dec 18, 2009 at 05:59:10AM -0500, Yury wrote:
>> >
>> >> ну то есть правильнее будет написать:
>> >> location ~ \.flv(\?start=[0-9]+)?$ {...}
>> >>
>> >> как-то так....
>> >
>> > query string не тестируется в location. Потому что в query string можно
>> > написать чего угодно, например:
>> >
>> >   /1.flv?чего-то-там&start=5
>> >   /1.flv?start=5&ещё-чего-то-там
>> >   /1.flv?как-то-так&start=5&ещё-чего-то-там
>> >
>> > И как это предлагается тетсировать ?
>> >
>>
>> Вы же сами предлагали XSL синтаксис для расширения тестов location.
>>
>> Например, так.
>>
>> location ~ \.flv$
>> ["start=" in $args]
>> {
>>   root /foo;
>>   flv;
>> }
>
> Да, но это не имеет отношения к обсуждаемой теме. Люди почему-то считают
> в location нужно указывать аргументы. При этом почему-то не задумаываются,
> что
>   /index.php?user=one&page=1
> можно записать и как
>   /index.php?page=1&user=one
>

ээ... а /foo можно записать как /bar. Это всё разные урлы.
Стандарт вообще говорит, что URI это path?query-string. Формат a=b&c=d
это частный случай. Реально существует форум vbulletin, который делает
урлы типа member.php?15. Это я к тому, что мы обсуждаем проблему
одного частного случая. Даже если он сильно распространён.

Интерпретация query аргументов в любом случае не на плечах nginx. В
частности, и считать разный порядок кусков текста разделенных &
разными или одинаковыми урлами. Ну, ещё хороший вариант - разбить
$query_string по & и упорядочить получившийся массив строк по
алфавиту. Тогда однозначно понятно, как именно писать location, но это
медленно. По-моему, нормальный компромисс.

Уверен, что вы это всё знаете, но тогда я не понимаю озабоченности
различием двух урлов выше. Будут обращаться, мол, у меня не матчится
криво написанный локейшн?

>
> --
> Игорь Сысоев
> http://sysoev.ru
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru@xxxxxxxxx
> http://nginx.org/mailman/listinfo/nginx-ru
>
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.