416 Запрошенный диапазон не угадан

Контекст: Я использую пакет программного обеспечения, называемый Social Engine. Это очень плохо.

Во всяком случае, я попросил (заплатил даже) людей Social Engine сделать обновление, а когда они наконец сделали это, я вошел в сайт и заметил, что стилей не хватало. Я открыл билет поддержки, и все, что они сказали мне, было то, что это была ошибка 416 и связаться со своим интернет-провайдером.

Эта ошибка была обнаружена путем тестирования прямой ссылки на файлы CSS, которые находятся в папке с возможностью записи в программном обеспечении.

http://ministersdev3.themonastery.org/application/css.php?request=application/themes/monastery-theme/theme.css&c=6

Я начал делать свое исследование только для того, чтобы найти его чрезвычайно редкую ошибку, и я не мог видеть никаких предложений по отклонению диапазона запроса на моем сервере Linet Ubuntu 10.10 (с использованием последних Apache и PHP5 с установленным расширением APC). Возможно, это проблема с программным обеспечением? Как-то работает кеширование с помощью APC? я reset кэширование в этом программном обеспечении до 60 секунд и убедитесь, что он использует APC. Еще нет кубиков.

Это что-то, что может сделать их программное обеспечение, что мне нужно будет изучить исправления?

Ответ 1

Проблема может быть связана с тем, что ваш браузер кэшировал исходные файлы CSS и пытался запросить диапазоны байтов новых файлов. См. Например эту ошибку с Chrome.

Что касается отключения запроса диапазона, это может быть необязательно, если вы очистите кеш браузера, но если вам это нужно, вы можете попробовать следующую конфигурацию Apache:

Header unset Accept-Ranges

Это скажет клиентам, что они не могут использовать заголовок запроса Range для запроса диапазонов байтов ваших файлов.

Ответ 2

У меня есть в верхней части моего файла .htaccess

Header set Accept-Ranges none
RequestHeader unset Range 

надеюсь, что это поможет.

Ответ 3

Перехватите заголовки, возвращающиеся от вашего интернет-провайдера, и убедитесь, что вы получаете код статуса 416. Если это так, перехватите заголовки, которые вы отправляете своему интернет-провайдеру, и опустите заголовок диапазона; это должно заставить сервер отправить вам весь файл.