ssi

alex storm storm at rfn.ru
Wed May 2 17:03:37 MSD 2007


Igor Sysoev пишет:
> Тогда - так:
>
> <!--#if expr="${REQUEST_URI} = \/events/" -->
>
> Нужно экранировать только первый символ, чтобы показать, что это не regex.
>   
Да, вот так действительно проходит. Хотя апач на такую конструкцию 
ругается :)
Спасибо за помощь!
>   
>> Igor Sysoev пишет:
>>     
>>> В данном случае лучше использовать сравнение со строкой:
>>>
>>> <!--#if expr="${REQUEST_URI} = \/events\/" -->
>>>
>>>  
>>>       
>>>> Видно где-то все-таки в тестах промахнулся, спасибо за помощь.
>>>>
>>>> Igor Sysoev пишет:
>>>>    
>>>>         
>>>>> On Wed, May 02, 2007 at 01:32:45PM +0400, alex storm wrote:
>>>>>
>>>>>
>>>>>      
>>>>>           
>>>>>> Вспомнил. При таком раскладе оно работает как /\/events\/.*/, 
>>>>>> отлавливая первое же вхождение.
>>>>>> Следовательно отрабатывает как на /events/, так и /events/test/.
>>>>>> Нет ли спопосба заэкранировать в виде ${REQUEST_URI} = \/events\/ ?
>>>>>>   
>>>>>>        
>>>>>>             
>>>>>      
>>>>>           
>>>>>> Я понимаю что конструкция // воспринимается как регэксп, а при 
>>>>>> нахождении конструкции \/\/ - nginx воспринимает это как строку и 
>>>>>> сравнивает с ней, что приводит к еще меньшим результатам.
>>>>>>   
>>>>>>        
>>>>>>             
>>>>> Сравнение со строкой:
>>>>>
>>>>> <!--#if expr="${REQUEST_URI} = \/events\/" -->
>>>>>
>>>>> Регулярное выражение:
>>>>>
>>>>> <!--#if expr="${REQUEST_URI} = /^\/events\/$/" -->
>>>>>
>>>>>
>>>>>      
>>>>>           
>>>>>> Igor Sysoev пишет:
>>>>>>   
>>>>>>        
>>>>>>             
>>>>>>> On Sun, Apr 22, 2007 at 03:31:04PM +0400, alex storm wrote:
>>>>>>>
>>>>>>>
>>>>>>>     
>>>>>>>          
>>>>>>>               
>>>>>>>> Люди, спасите.
>>>>>>>>
>>>>>>>> Либо я совсем мозг проел, либо это не работает и работать не должно.
>>>>>>>> Регэспом цепляет, но естественно парсит всю строку.
>>>>>>>>
>>>>>>>> Конструкция <!--#if expr="${REQUEST_URI} = \/" --> проходит, более 
>>>>>>>> сложные нет.
>>>>>>>> Попытки экранировать в любом виде игнорируются.
>>>>>>>>
>>>>>>>> Т.е. Конструкции типа
>>>>>>>> <!--#if expr="${REQUEST_URI} = \/events\/" -->
>>>>>>>> <!--#if expr="${REQUEST_URI} = /events\/$/" -->
>>>>>>>> и т.п. не работают.
>>>>>>>>
>>>>>>>> Это можно завести, или в морг?
>>>>>>>>  
>>>>>>>>       
>>>>>>>>            
>>>>>>>>                 
>>>>>>> Дожно работать такое:
>>>>>>> <!--#if expr="${REQUEST_URI} = /\/events\//" -->
>>>>>>>
>>>>>>>
>>>>>>>     
>>>>>>>          
>>>>>>>               
>>>>>>>> P.S. Есть древний сайт, истерически собирающийся из ssi, есть желание 
>>>>>>>> перевести его под nginx.
>>>>>>>> P.P.S. Прошлай раз протупил - не дошел до места, где сказано что ssi 
>>>>>>>> поддерживает регэкспы.
>>>>>>>>  
>>>>>>>>       
>>>>>>>>            
>>>>>>>>                 
>>>>>>>     
>>>>>>>          
>>>>>>>               
>>>>>> -- 
>>>>>> Alex Storm, system administrator
>>>>>> Federal State Unitary Enterprise "The Russian Television and Radio 
>>>>>> Broadcasting Company" 
>>>>>>
>>>>>>   
>>>>>>        
>>>>>>             
>>>>>      
>>>>>           
>>>> -- 
>>>> Alex Storm, system administrator
>>>> Federal State Unitary Enterprise "The Russian Television and Radio 
>>>> Broadcasting Company" 
>>>>
>>>>    
>>>>         
>>>  
>>>       
>> -- 
>> Alex Storm, system administrator
>> Federal State Unitary Enterprise "The Russian Television and Radio 
>> Broadcasting Company" 
>>
>>     
>
>   


-- 
Alex Storm, system administrator
Federal State Unitary Enterprise "The Russian Television and Radio Broadcasting Company" 






More information about the nginx-ru mailing list