Как обслуживать документы из-за пределов корневого веб-сайта с помощью PHP?

В целях безопасности я перемещаю набор файлов и папок за пределы корневого веб-каталога на сервере Apache, а затем я буду обслуживать их динамически. { {1}} Это кажется лучше, чем две альтернативы:

  1. Оставьте их доступными в Интернете и просто создайте страницу входа php, которая будет добавляться к каждому файлу. Проблема в том, что это не все файлы php, и я не могу добавить файл входа php к pdf, изображению и т. Д.
  2. Оставьте их доступными в Интернете и используйте HTTP-аутентификацию, чтобы ограничить доступ ко всему каталогу. Но это создает проблемы, включая пароли в открытом виде, отсутствие метода корректного выхода из системы и т. Д.

Итак, мы вернулись к тому, чтобы иметь их вне корневого веб-каталога, но обслуживать их динамически. Проблема, с которой я столкнулся, заключается в том, что все они разных типов файлов (сценарии php, txt, pdf, jpg), я не уверен, следует ли мне использовать include () или readfile ( ) . И у меня возникают проблемы с отправкой правильных заголовков для каждого файла, чтобы браузер правильно их отображал.

Я упустил еще одно волшебное решение? Есть ли фреймворк, который ускользнул от меня, который обрабатывает динамические файлы и заголовки?

(К вашему сведению, я использую Linux, Apache и PHP на общем хосте)

8
задан Andrew 9 October 2011 в 06:12
поделиться