Прямо сейчас у меня есть такой файл .htaccess. Он отправляет всех на страницу индекса, если вы не хотите настоящий файл. Это своего рода то, что я хочу, но я не хочу, чтобы кто-либо имел доступ к файлу .php. Итак, вот что у меня есть:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f [NC]
RewriteRule ^(.*) /index.php [NC]
Но это то, что я хочу:
if(file_exists(request) && !request.endsWith(".php"))
do not redirect request
else
redirect to index page
Вот что я пробовал:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f [NC]
RewriteRule !(\.php)$ /index.php [NC]
Но если я введу реальное местоположение php-файла, он все равно попытается загрузить его. Я всегда могу добавить несколько строк в начало каждого php-файла, спрашивая, что такое PHP_SELF. Если PHP_SELF не index.php, то я перенаправляю их на страницу индекса. Но я думаю, что .htacess может сделать это лучше.