Мне нужно защитить несколько файлов, типов файлов и подкаталогов от публичного доступа через HTTP-сервер Apache.Некоторые из этих каталогов могут еще не существовать, но будут созданы позже с помощью сценариев.Поэтому распространение отдельных файлов .htaccess в каждом заблокированном подкаталоге не вариант.
В корневом каталоге должен быть только один файл .htaccess, чтобы он был простым и управляемым.
Я также не наденуне хочу использовать перезапись URL, потому что это имеет тенденцию быть нестабильным и передумать относительно того, что соответствует, как зависит от настройки сервера.Это слишком рискованно, чтобы использовать его для контроля доступа, когда ошибки не сразу очевидны.
Я знаю директиву Require all denied
, но ищу способ расширить ее до желаемых типов файлов и подкаталогов (и, возможно, определенных файлов).в подкаталогах).Подумайте о синтаксисе .gitignore
, который позволяет мне указывать шаблоны путей, которые следует игнорировать.Мне бы хотелось, чтобы такой список шаблонов путей был запрещен для клиентов.
Пример:
- data /
- logs / (полностью блокировать)
- news / (не блокировать)
- auth.db (блокировать *.db)
Я ищу файл .htaccess для размещения в каталоге данных (может быть также в его родительском, корне веб-пространства, если это проще;уже существует), который блокирует указанные подкаталоги и файлы.Как это будет работать?Многие из используемых директив Apache config не поддерживаются в файлах .htaccess, а другие, похоже, не поддерживают подкаталоги.Похоже, что Apache удостоверился, что я не могу легко использовать файл централизованного контроля доступа в веб-пространстве.
Я не могу использовать конфигурацию основного сервера, хотя он выходит за рамки (общий хостинг и не может быть загружен черезWebspace).