Всем доброе утро!
Прочитал
статью на Хабре об отдаче файлов с сервера и решил попробовать третий способ из статьи - отдача файлов через модуль XSendFile для Apache.
Система Windows Server 2003, Apache 2.2, PHP 5.3.13
Что сделал:
1. Скачал модуль с сайта, распаковал и закачал файл mod_xsendfile.so в apache/modules
2. Прописал в httpd.conf строчку
LoadModule xsendfile_module modules/mod_xsendfile.so
3. Прописал в .htaccess директории со скриптом, который отдаёт файлы, директиву
XSendFile On
Что получилось: всё работает отлично в пределах текущей директории - файлы отлично отдаются через header('X-SendFile: название файла'). Но мне хочется, чтобы файлы скачивались из директории, лежащей вне сервера - через задание абсолютного пути.
Пробовал задавать путь в скрипте:
$makePath = 'C:/путь_к_файлу/файл.txt';
var_dump(file_exists($makePath));
header('X-SendFile: '.$makePath);
var_dump показывает, что файл по этому пути есть и существует - bool(true), но header ничего не отправляет и выводит ошибку "The requested URL was not found on this server."
Возможно ли то, что я хочу сделать? И если да, то где и что надо прописать, чтобы всё заработало?