непонятка с rewrite
RaPaMaN
rapaman at virthost.net
Sat Apr 9 16:05:40 MSD 2005
Добрый день,
А как реализовать следующую вещь:
Перехватывать urlы вида /en/blaster/master/twister/ и делать rewrite на
index.php, при этом пропускать запросы к css,картинкам и запросы на php
и прямо корень сайта пропусать на fastcgi ?
Я сделал следующий конфиг:
location = / {
.... на fastcgi ....
}
location ~* ^.+(\.htaccess|\.htpasswd|htpasswd|htaccess|\.inc)$ {
return 403;
}
location ~* ^(?!.+\.(css|gif|jpg|txt|html|htm|png|jpeg|ico))$ {
rewrite ^.+$ /index.php break;
}
location ~* ^.+\.(php)$ {
.... на fastcgi ....
}
location ~* ^.+\.(jpg|jpeg|gif|png|css|ico|html|txt)$ {
root ... статика ...
}
в итоге на все запросы - /en/blaster/master/ или /booster/ - 404 ошибка
и все, не помогает даже добавление location еще одного
location ~* ^(/.+/)$ {
rewrite ....
}
Как я понимаю, в rewrite я не могу прописать pcre, чтобы rewrite
срабатывал "для всего, кроме ...), т..е. ^(?:.+(?!\.css|.htm....))$
Как сделать такое, может я просто чего-то не допонял ?
Спасибо.
С Уважением,
Дмитрий.
More information about the nginx-ru
mailing list