ПРОЕКТЫ 


  АРХИВ 


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: Проблема с rewrite



On Thu, Aug 14, 2008 at 11:51:18AM +0400, eMASTER wrote:

> Прошу помочь разобраться со следующей проблемой:
> 
> нужно перевести маленький .htaccess под nginx
> 
> =================================================
> код htaccess:
> 
> AddDefaultCharset UTF-8
> DirectoryIndex index.php
> 
> RewriteEngine On
> RewriteBase /
> RewriteCond %{REQUEST_FILENAME} !-f
> RewriteCond %{REQUEST_FILENAME} !-d
> RewriteRule . /index.php [L]
> =================================================
> код nginx:
> 
> location / {
>     root   /var/www;
>     index  index.php;
> 
>     if (!-f $request_filename){
>          rewrite .* /index.php last;
>     }
> 
>     if (!-d $request_filename){
>          rewrite .* /index.php last;
>     }
> }
> =================================================
> 
> В firefox 3 выводит ошибку "Redirect Loop", как лечить?

Потому что один и тот же файл не может одновременно и каталогом, и файлом:
-d и -f нужно заменить на -e.

А вообще, нужно делать так:

  location / {
      root  /var/www;
      index  index.php;
      error_page  404 = /index.php?$args;
  }


-- 
Игорь Сысоев
http://sysoev.ru



 




Copyright © Lexa Software, 1996-2009.