Intereting Posts
вызывать скрипт php для каждой строки в моей базе данных mysql Использование XDebug для отслеживания страницы веб-сервиса PHP PhpStorm найти все устаревшие способы использования в проекте Роллинг вашей собственной вики-страницы (Wiki внутри БД) Как отображать ошибки PHP в выводе кода? Разница между циклами Как взаимодействовать с PKCS # 11 совместимым устройством HSM в PHP Исходный код PHP в файлах UTF-8; как правильно интерпретировать? создание динамической строки mysql? Как эхо текст заглавными буквами? Как заставить класс загрузки файлов CodeIgniter принимать все расширения? Используя PHP, MySQLi и подготовленный отчет, как я возвращаю идентификатор вставленной строки? php / ajax REMOTE_ADDR установлен на IP-адрес фиктивного сетевого адаптера Как отслеживать время пользователя на сайте Динамически связывать параметры mysqli_stmt, а затем связывать результат (PHP)

Как игнорировать доступ к php-файлам с помощью mod_rewrite?

Например: www.example.com/about.php

Я не хочу, чтобы файлы с расширением .php были доступны для доступа, вместо этого отобразите страницу 404.

У меня есть файлы в корневой папке: content.php about.php footer.php и т. Д. Теперь я могу добраться до этих файлов, введя их в адресную панель. Я хочу ограничить это.

Как я могу это сделать?

Solutions Collecting From Web of "Как игнорировать доступ к php-файлам с помощью mod_rewrite?"

Лучший подход, который позволяет избежать накладных расходов и сложность mod_rewrite, – это просто не помещать файлы, которые вы не хотите получать по URL-адресу в корневой папке . Вы можете просто положить их в другое место и включить их оттуда; простой и (более) безопасный, но по какой-то причине это, похоже, не является общеизвестным.

Примерная структура может быть

project/ project/root project/lib 

Ваш открытый код (например, index.php) будет жить в проекте / root, и это будет корень веб-сайта. Ваш включенный код будет жить в проекте / lib может быть легко включен с использованием require, include и т. Д.

Нет mod_rewrite. Очень просто.

 RewriteRule \.php$ /path/to/page/404.html