RewriteCond in nginx

Igor Sysoev igor на sysoev.ru
Пт Янв 20 14:06:41 UTC 2012


On Fri, Jan 20, 2012 at 09:01:38AM -0500, 4arodej wrote:
> Добрый день!
> 
> Имеется такой кусочек .htaccess:
> 
> RewriteCond %{REQUEST_FILENAME} !-d
> RewriteCond %{REQUEST_FILENAME} !-f
> RewriteCond %{REQUEST_URI} !^kernel/external/.*$
> RewriteRule ^(.*)$ index.php?link=$1&%{QUERY_STRING} [L]
> 
> Правильно ли я понимаю, что его
> необходимо записать в виде:
> 
> if (!-e $request_filename) {
> if ($request_uri = !^kernel/external/.*$){
>                                         rewrite ^(.*)$
> /index.php?link=$1 break;
> }
> }
> 
> ?
> 
> При запуске nginx ругается на вторую
> строку "invalid variable name". Может переменной
> $request_uri нет в nginx 0.5.33 (ubuntu 8.04 lts) или я
> туплю под вечер? :)

location /kernel/external {
    ...
}

location / {
    try_files  $uri  $uri/  /index.php?link=$uri&$args;
}


-- 
Igor Sysoev



Подробная информация о списке рассылки nginx-ru