Category:

xsendfile для apache

Для Windows:

На офсайте модуля (https://tn123.org/mod_xsendfile/) автор (да продлит Аллах его годы) говорит: нету у меня виндовс-версии для x64 — качайте исходники, компилируйте вижуал студией и будет вам счастье. Но мыжпрограммисты, и, конечно, не будем ничего компилировать. 

1. Отсюда качаем mod_xsendfile (на всякий случай оба — и для x64 и для 86)
http://www.apachelounge.com/download/

2. Копируем .so файл в папку модулей апача — в зависимости от разрядности винды. А если не заработает с родной разрядностью, то наоборот :)

3. В httpd.conf пихаем строчку:
LoadModule xsendfile_module modules/mod_xsendfile.so

4. Рестартим апач

5. Проверяем по phpinfo(), что xsendfile установился. Или запускаем из командной строки httpd -M (хотя зачем, мы же не линуксоиды :)

Для CentOS:

На офсайте модуля (https://tn123.org/mod_xsendfile/) автор (да убелит Аллах его бороду) говорит «качайте вгетом и инсталлируйте dev-тулзами апача». Но мы, конечно, опять его не послушаемся!

1. Потому что можно инсталлировать модуль из стандартного репозитория: yum install mod_xsendfile.x86_64 (при необходимости перед этим — yum search xsendfile)

2. Рестартим апач: service httpd restart (добавлять в конфиг не надо — само должно залезть)

3. Смотрим, установился ли модуль: httpd -M

Зачем это надо?

Если такой вопрос возник — ни за чем. Но вообще... 

Этот модуль перехватывает заголовок респонса «X-SendFile: путь к файлу» и отдаёт файл апачу. Причём делает он это мимо .htaccess — что позволяет htaccess-ом запретить прямой доступ к файлу, зато потом разрешить доступ программно, отправкой заголовка — при соблюдении нужных нам условий, например, залогиненности пользователя, оплаты цифрового товара и т.п. Ну а поскольку  файл отдаёт сразу апач, файлы можно скачивать большие-пребольшие (чего нельзя делать по-другому из-за ограничений PHP) — в несколько сотен метров. Или даже больше. На локалке проверял с зипом в 4 Гб — на сервер закачивать лень.

Error

Anonymous comments are disabled in this journal

default userpic

Your reply will be screened

Your IP address will be recorded