У меня есть файл с именем startpage.inc.php
и я хочу включить его, но предупреждаю, что любой может открыть его в своем браузере. Является ли это возможным?
Возможный:
<?php
include 'inc/startpage.inc.php';
?>
Предотвращать:
www.example.org/inc/startpage.inc.php
У вас есть несколько вариантов.
Проверьте, определена ли константа в вашем файле. Если не, exit;
, Определите константу в файле, который включает в себя startpage.inc.php
, Вот как многие бесплатные скрипты предотвращают нежелательные включения.
Нет сценария в общедоступной папке. Переместите его ниже корня документа, чтобы он никогда не был доступен напрямую, только если он включен через include
или же require
,
Есть много способов сделать это, в том числе .htaccess
а также php
т.е.
Используя PHP:
if(count(get_included_files()) ==1) exit("Direct access denied.");
С помощью .htaccess
файл
<FilesMatch "\.inc\.php$">
Order deny,allow
Deny from all
</FilesMatch>
Найдите время, чтобы прочитать:
лучшие 5 путей к предотвращать-прямой доступ-к-а-PHP-файл