Используйте.htaccess, чтобы заблокировать *All* доступ к определенным папкам
Я не уверен, как это сделать, но я хочу заблокировать любой доступ к определенному набору папок на моем веб-сервере. Скажи секрет01 и секрет 02...
homeDir
|- data
|- www
| |- .htaccess (file)
| |- images
| |- js
| |- secret01
| |- secret02
| |...
|...
Какие правила мне нужно добавить в мой корневой файл.htaccess, чтобы сделать это? Я хочу, чтобы весь доступ из Интернета был заблокирован для доступа к этим папкам, точка. Единственный способ добраться до них был бы закончен SFTP
или же SSH
, Так какое правило я ищу? Я предпочтительно ищу однострочник, чтобы я мог добавить больше папок или переместить его на другой сайт в будущем. Я действительно предпочел бы, чтобы правило помещалось в корневой файл.htaccess, чтобы мне не приходилось прыгать повсюду, чтобы блокировать и разблокировать папки.
= Обновление для Ясности =
У меня нет доступа к файлу conf для этого хоста (он находится в общей среде), и мне нужно иметь эти папки внутри webroot для некоторых целей оболочки. Если бы я мог, я бы уже убрал их из рута.
Я также не хочу ввернуть права доступа к файлу, просто есть правило в моем .htaccess
блокирует доступ веб-трафика к папке или набору папок.
2 ответа
Вы можете просто создать.htaccess с
DENY FROM ALL
для папок (поместите файл в те).
Также с mod_rewrite на www/.htaccess:
RewriteEngine On
RewriteRule ^(secret1|secret2|asdf) - [F,L]
Если вы действительно не хотите, чтобы они были доступны через Интернет по протоколу HTTP, вы должны полностью переместить их за пределы веб-дерева.
Вы также можете использовать разрешения файловой системы. Например, если Apache работает как apache
пользователь, но вы хотите, чтобы файлы были доступны только через SSH user23
вы можете иметь секрет * принадлежащий user2
и не для публичного чтения. Конечно, здесь есть почти бесконечные дополнительные опции. Groups, filesystem ACLs, and more.
For ACLs, you can use mod_authz. It's best to keep the configuration in the conf and not in .htaccess
, Having them in .htaccess
introduces more exposure and possible for manipulation with lesser privileges.