Переписать расширение файла BUT запретить прямой доступ к файлу

Я ищу способ скрыть расширение файла через .htaccess и запретить прямой доступ. Давайте рассмотрим следующее:

http://www.xyz.zyx/index.php 

преобразуется в

 http://www.xyz.zyx/index OR http://www.xyz.zyx/ 

Все хорошо до сих пор. То, что я хочу сделать дальше, – это блокировать или перенаправлять, когда пользователь пытается получить прямой доступ. Например, если пользователь вводит в строке URL следующий (расширение), блокирует или перенаправляет:

 http://www.xyz.zyx/index.php 

Я проверил другие ответы на другие вопросы, но, похоже, это не так.

Заранее спасибо за помощь новичку, как я.

Solutions Collecting From Web of "Переписать расширение файла BUT запретить прямой доступ к файлу"

Хотя можно задаться вопросом о полезности такой вещи, это возможно, так вот как это сделать в .htaccess с помощью mod_rewrite :

 RewriteEngine On # Sets your index script RewriteRule ^$ index.php [L] # Condition prevents redirect loops (when script is not found) RewriteCond %{ENV:REDIRECT_STATUS} !^$ RewriteCond %{REQUEST_FILENAME} !-f # Stop here if the file is not found after a redirect RewriteRule ^(.*)$ notfound.php [L] # Condition prevents redirect loops (when script is found) RewriteCond %{ENV:REDIRECT_STATUS} ^$ # Forbid access directly to PHP files RewriteRule ^.*?\.php$ forbidden [F,L] # Make sure the filename does not actually exist (images, etc.) RewriteCond %{REQUEST_FILENAME} !-f # Append the .php extension to the URI RewriteRule ^(.*)$ $1.php [L]