.htaccess и mod rewrite в nginx или как я мигрировал с Apache
Перейти к навигации
Перейти к поиску
В связи с полным переездом на nginx для работоспособности ЧПУ (постоянные ссылки) и mod_rewrite пришлось немного поковыряться в Интернете. nginx не использует .htaccess от Apache, а уж тем более его правила, поэтому следующее содержимое файла .htaccess:
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
Мы переносим в nginx.conf в директиву location, немного изменив синтаксис:
#RewriteEngine On
#RewriteBase /
rewrite ^index\.php$ - last;
if (-f $request_filename) { break; }
if (-d $request_filename) { break; }
rewrite . /index.php last;