rewrite
Vasyl Kondrashov
vasyl.kondrashov at gmail.com
Fri Jan 30 13:25:16 MSK 2009
Доброго времени суток!
Понадобилось перевсти для nginx следующие правила apache:
RewriteRule ^$ /index.php [L]
RewriteCond $1 !^(index\.php|install|img|smarty|images|scripts|fonts|uploads|css|js|robots\.txt|sitemap\.xml|favicon\.ico)
RewriteRule ^(.*)$ /index.php/$1 [L,QSA]
RewriteRule (.*)-(.*)\.html$ wallpapers/show/$2
RewriteRule (.*)-(.*)/$ categories/show/$2
RewriteRule (.*)-(.*)\/(.*)$ categories/show/$2/$3
Получается конструкция типа:
rewrite ^$ index.php last;
...
rewrite (.*)-(.*)\.html$ wallpapers/show/$2
rewrite (.*)-(.*)/$ categories/show/$2
rewrite (.*)-(.*)\/(.*)$ categories/show/$2/$3
В принципе, понятно, для QSA прописываю "fastcgi_param QUERY_STRING
$request_uri;"
но второе правило с условием - никак, получаются либо вложенные if,
либо "location !~..."
Насколько я понимаю, "!" и вложенные if не работают - а как вывернуть
это наизнанку - ума не приложу :(
Может кто сталкивался с чем-то подобным?
More information about the nginx-ru
mailing list