Я знаю, что это глупый вопрос, но я нигде не нашел Информации. Я поддерживаю веб-сайт для старого клиента, и до сих пор я использовал заголовок X-SENDFILE для управления доступом к довольно большому файлу.
Администраторы его сервера теперь обновили Apache, что сломало сайт. Проведя небольшое исследование, я обнаружил, что мне пришлось удалить XSendFileAllowAbove
Вариант и вместо этого добавить XSendFilePath
. Поскольку этот параметр явно не может быть установлен в файле .htaccess (я читал об этом, я также пробовал, чтобы убедиться), администраторы сервера должны добавить его напрямую. Однако они отказываются это делать и говорят, что mod_xsendfile устарел. Я искал, чтобы проверить это, но нигде не могу найти.
Кроме того, они отказываются предлагать альтернативу, поэтому, если вы знаете, я буду благодарен :).
Файл слишком велик для обслуживания с помощью PHP (по крайней мере, не так просто), у меня нет доступа к серверу, я могу получить доступ только к коду веб-сайта.
Как только я опубликовал вопрос, я нашел этот пост, который, по крайней мере, предполагает, что mod_xsendfile отлично работает в Apache 2.4: https://superuser.com/questions/1035459/is-mod-xsendfile-not-compatible-with-apache-2-4 Это не полностью отвечает на мой вопрос, но, по крайней мере, это начало и может помочь кому-то найти то же самое и найти этот вопрос.
Не рекомендуется это не означает, что он не будет работать с Apache 2.4, но это противоречит их собственной политике качества программного обеспечения. После всего, mod_xsendfile
:
Хотя модуль прост, использование такого модуля может подвергнуть систему угрозам безопасности. Поэтому ограничение кажется разумным, и вы точно не получите модуль ни на одном виртуальном хостинге.
Надеюсь, кто-то здесь может предложить альтернативные решения!
«последняя» 1.0 версия x-sendfile работает на apache 2.4. Мне просто пришлось обновить все мои серверы до 1.0 с 0.6 после непрерывного обрыва соединения. версия 1.0 устраняет проблему обрыва соединения.
https://github.com/nmaier/mod_xsendfile/blob/master/mod_xsendfile.c