Предотвращение доступа к php-страницам

Хорошо, поэтому я установил .htaccess следующим образом:

Options +FollowSymLinks RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^([^/]+)$ index.php 

так что вы можете видеть, что я разбираю все, чтобы индексировать, кроме файлов, потому что мне нужно «включить» файлы php, а также отображать изображения.

Если пользователи будут печатать, например, www.site.com/login.php, который покажет страницу входа в систему.

Как предотвратить доступ к php-страницам, но также разрешить «включать» их?

Solutions Collecting From Web of "Предотвращение доступа к php-страницам"

Переместите их за пределы вашего корня документа. Они могут быть безопасно включены оттуда, но не доступны через Интернет.

Если я понимаю вопрос, вы не хотите, чтобы пользователь мог перейти к другим файлам, если он не вошел в систему? Если это так, вы можете использовать сеансы php для установки переменной, которую они регистрируют, в противном случае перенаправляют на индекс

(Если я понимаю вопрос)

Если вы хотите пойти по этому маршруту (рекомендации для внешнего webroot являются правильными!), Тогда вы можете использовать такое правило (см. Регулярное выражение с отрицательным выражением ):

  RewriteRule ^(?!index).+\.php$ - [F] 

Это неряшливо, что позволит index2.php или indexdir/xyz.php прежнему; он просто передает все, что не является index * .php из-за доступа. Обязательно также запретите .cgi или .phtml или .tpl если это необходимо.