1 заметка с тегом

PHP

/core.php, line 2
Error 2: Use of undefined constant k - assumed 'k' (this will throw an Error in a future version of PHP)

Запрет выполнения PHP в конкретной директории

Когда нет времени на устранение дыр в безопасности проекта, но нужно быстро запретить исполнение загруженных php файлов в конкретной директории (обычно это папка для загрузок файлов или assets).

Если веб-сервер Apache достаточно создать в директории файл .htaccess со следующим содержимым (комментарии можно убрать):

# отключаем исполнение CGI и листинг директорий
Options -ExecCGI -Indexes
# отменяем все обработчики и явно отключаем PHP
RemoveHandler .php .phtml .php3
RemoveType .php .phtml .php3
php_flag engine off
# для всех файлов с расширением .php
<FilesMatch "\.php$">
# отменяем обработчик
SetHandler none
# и полностью запрещаем доступ
Order Allow,Deny
Deny from all
</FilesMatch>

Данное решение может показаться избыточным, однако у различных хостинг провайдеров установлены различные настройки и данный способ вполне универсален.

Прочие полезные хаки .htaccess описаны в данной статье

2019   .htaccess   Apache   PHP