Re: Переделка rewrite rule из .htaccess под nginx

slava slava at skitalets.ru
Tue Jul 24 15:04:40 MSD 2007


В данном случае первая 404 не будет отдана клиенту, а будет обработана
nginx-ом (второй location)
А вот если  location = /index.php вернёт 404, то она уже отдастся клиенту.



----- Original Message -----
From: "Driantsov Alexander" <bender at cdev.ru>
To: <nginx-ru at sysoev.ru>
Sent: Tuesday, July 24, 2007 2:42 PM
Subject: Re: Переделка rewrite rule из .htaccess под nginx


On Tue, 17 Jul 2007 15:19:33 +0400
Igor Sysoev <is at rambler-co.ru> wrote:

> On Tue, Jul 17, 2007 at 03:14:49PM +0400, Oleg Danilov wrote:
>
> > Может поможет кто-то переделать несколько правил с апача на nginx
> >
> > RewriteCond %{REQUEST_FILENAME} !-f
> > RewriteCond %{REQUEST_FILENAME} !-d
> > RewriteRule ^(.*)$ /index.php?path=$1&%{QUERY_STRING}
>
>     location / {
>         error_page  404 = /index.php?path=$uri&$args;
>     }
>
>     location = /index.php {
>         fastcgi_pass  ...
>         #proxy_pass   ...
>     }

Хотелось бы вновь поднять эту тему. Видите ли, если я буду использовать
решение "error_page 404 = ...", то поисковики не будут обрабатывать подобные
страницы, увидев в header'е ошибку, это крест на SEO. Существует ли другой
оптимальный солюшн для обработки подобных ситуаций. Мой .htaccess для
Apache'а на данный момент выглядит вот так:

RewriteEngine On
Options +FollowSymLinks
RewriteBase some_directory/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* some_directory/some_script.php [L]

--
Sincerely yours,
Driantsov Alexander,
Technical Support Engineer

Qualiteam Software
Glavpochtamt, p/o box 5152.   [web site] http://www.x-cart.com/
432072 Ulyanovsk, Russia      [ phone  ] +7-(8422)-429037  (9:00-18:00 GMT
+4)





More information about the nginx-ru mailing list