Почему этот простой rewriterule не работает?

#apache #mod-rewrite

#apache #мод-перезапись

Вопрос:

У меня есть два правила для перенаправления на соответствующие интерфейсные контроллеры:

 RewriteRule ^api/?.*$ api.php [NC,L]
RewriteRule ^.*$ web.php [NC,L]
  

Есть ли причина, по которой localhost/api/a не удается перехватить первое правило?

Комментарии:

1. Пытаюсь определить, здесь проблема или в другой конфигурации.

2. Какова ваша база перезаписи?

3. Если это файл .htaccess, вам может понадобиться база перезаписи.

4. Я протестировал это, и у меня это сработало.

5. Включен ли у вас mod_rewrite?

Ответ №1:

Попробуйте это:

Если он в корне,

 RewriteBase /
RewriteRule ^api/?.*$ api.php [NC,L]
RewriteRule ^.*$ web.php [NC,L]
  

Комментарии:

1. Извините, я имел в виду, что пробовал это, но это ничего не изменило. Да, это в корне.