ПРОЕКТЫ 


  АРХИВ 


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[2]: rewrite



On Tue, 18 Jan 2005, Alexey Bestciokov wrote:

спасибо, разобрался.
жалко что это всё нельзя прописывать внутри location :)

Пока нельзя.

возник второй вопрос - при такй схеме в REQUEST_URI передается
index.php, а не оригинальная строка запроса.
соответсвенно определить оригинальный путь из пхп не получается ...

Это ошибка у меня в настройке или всё так и должно работать ?
пхп собран с enable-force-cgi-redirect

Именно так и работает. А в Апаче, насколько я понимаю, передаётся
оригинальынй URI ? Cкорее всего - да, так как там mod_rewrite переписывает
r->filename, а не r->uri.

Исправлю.

IS> On Tue, 18 Jan 2005, Alexey Bestciokov wrote:

Псоле появления поддержки fcgi тут же появились глупые вопросы по
реврайту :)
Подскажите пожалуйста, как делать редирект всего кроме некоторых
файлов / каталогов на index.php ?

в апачевском мод реврайте можно было написать например
RewriteRule ^image/(.*) - [L]
RewriteRule ^(.*) index.php

как это делать в nginx ?

IS> Именно этот вариант можно так (с помщью отрицательного regexp'а):

IS>       server {
IS>            rewrite_rule  ^(?!/images/).*  /index.php;

IS>            location /index.php {
IS>                fastcgi_pass  ...
IS>                fastcgi_root  ...
IS>            }

IS>            location /images/ {
IS>                root  ...
IS>            }


IS> Для отладки можно использовать
IS>      rewrite_log  on;
IS> процесс переписывания пишется на уровне notice.


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


 




Copyright © Lexa Software, 1996-2009.