Назад | Перейти на главную страницу

nginx rewrite, исключая конкретное местоположение или каталог

Согласно документации, Nginx не позволяет НЕ сопоставлять регулярное выражение. Как переписать и удалить .php расширение, кроме конкретного места или каталога?

Правила перезаписи и перенаправления расширения .php. Это работает

location ~ .php {
    rewrite ^/?(.*)\.php$ /$1 redirect;
    rewrite ^/?(.*)$ /$1.php break;
}

Здесь применяется еще одно условие - перезаписать все файлы php Кроме в scuredb

location ~ .php(?!(/scuredb)) { // but still scuredb/index.php - redirecting to index