Как сделать так, чтобы файлы .htaccess в подпапке не выполнялись?

Я создаю проект облачного хранилища и хочу, чтобы пользователи могли загружать любые файлы. В частности, я хочу, чтобы люди могли загружать .htaccess файлы, но я не хочу, чтобы Apache использовал эти файлы, так как это проблема безопасности. Как я могу запретить Apache использовать загруженный пользователем файл, в то же время используя мой собственный файл .htaccess в родительской папке?

0

Решение

Этот вопрос полезно чтение. Сначала применяются директивы рядом с корневым каталогом www, позже используются подпапки, которые могут перезаписать предыдущие настройки.

Есть несколько вещей, которые вы можете сделать:

  • Не используйте файлы .htaccess вообще, даже в других каталогах. Если у вас есть выделенный сервер, вы можете отредактировать файл конфигурации сервера, что намного эффективнее. Это позволит вам установить AllowOverride None, что не позволит Apache использовать файлы .htaccess вообще. Вместо этого вы можете сделать то же самое, поместив свои правила в файл конфигурации сервера. Вам нужно будет перезапускать Apache каждый раз, когда вы вносите изменения, и ошибка в файле конфигурации сервера будет препятствовать запуску Apache до тех пор, пока он не будет исправлен.
  • Сохраняйте ваши файлы в виде случайных символов без расширения, не позволяйте получать прямой доступ к каким-либо файлам и вместо этого полагайтесь на базу данных для сопоставления имени файла с файлом. Это позволяет вам безопасно хранить файлы, при этом не сохраняя все данные в вашей базе данных.

Вы не можете поместить в файл .htaccess что-либо, что помешало бы игнорировать файлы .htaccess в подкаталогах, поскольку AllowOverride работает только в контексте каталога, а не в контексте .htaccess.

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector