На моем сервере Apache у меня следующая структура:
/www
.htaccess
api.php
index.php
Мой .htaccess - это очень простой файл, который перенаправляет весь трафик на index.php:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?path=$1 [L,QSA]
И мой файл index.php просто печатает, какой бы путь не был:
<?php print_r($_REQUEST['path']); ?>
Поэтому, когда я пытаюсь получить доступ к web.com/test
, я получаю веб, который выдает Array ( [path] => test )
.
Однако, когда я пытаюсь получить доступ к web.com/index
или web.com/api
, возвращается ошибка 404.Я проверил, что это происходит только тогда, когда я пытаюсь получить доступ к маршруту с именем существующего файла.Как я могу предотвратить это поведение?