2012-08-02 2 views
0

Я новичок в Nginx и должны включать в себя следующие Apache RewriteRule:Nginx - Apache RewriteRule

RewriteRule ^download_download_([a-z]{2})/(.*)$   /download_download/$2   [QSA,L] 

Может кто-нибудь помочь?

ответ

0

Вы можете обычно всегда меняете Apache's RerwiteRule abc xyz на rewrite abc xyz; в Nginx.

Apache's [QSA,L] просто last в Nginx.

Твист с вашим заключается в том, что у вас есть фигурные скобки {...} в вашем регулярном выражении. Кудрявые фигурные скобки имеют внутреннее использование в Nginx, и в результате вам нужно обернуть строку регулярных выражений в кавычки "..." для Nginx, чтобы правильно разобрать регулярное выражение.

Таким образом, вы можете попробовать

rewrite "^download_download_([a-z]{2})/(.*)$" /download_download/$2 last;

+0

бы добавить косую черту в начале. rewrite "^/download_download _ ([a-z] {2})/(. *) $"/download_download/$ 2 last; Теперь он работает нормально. Спасибо! – Arwed