2014-11-19 7 views
2

Я простирающийся этот предыдущий вопрос: Aborting a HTTP/1.1 chunk encoded responseПрервать HTTP фрагмент закодирован ответ с ошибкой Page

Когда я прервать Chunked ответ Chrome отображает пустую страницу и отчеты консоли разработчика Net :: ERR_INCOMPLETE_CHUNKED_ENCODING. IE отображает неполную страницу. Есть ли способ отправить пользователя на страницу с 500 ошибками?

Могу ли я выводить что-то, что искажает документ, чтобы браузер не использовал его? Если да, то какая кратчайшая строка я могу отправить для этого?

ответ

2

К сожалению, вы не можете отправить кусок, который говорит браузеру «Эй, забудьте все, что я отправил до сих пор - что-то пошло не так». Отправка пакета сброса TCP приведет к тому, что большинство браузеров отобразит страницу «Сброс сервера», но для этого требуется доступ к одному уровню по сетевому стеку.

Единственное, что я могу придумать, это попытаться отправить кусок с отрицательной длиной. Я не знаю, как браузеры реагируют на это.

+0

Есть ли способ инициировать перезагрузку TCP через PHP? Может быть, вызвав функцию Apache или exec или что-то еще? – skibulk

0

Вот что-то интересное, что я обнаружил. Я не уверен, что он должен применяться здесь, но для рассмотрения:

Заголовок HTTP Trailer может быть способом вставить заголовок недействительности после ответа.

Общее значение поля прицепа указывает на то, что данный набор заголовков полей присутствует в прицепе сообщения, закодированного с фрагментированное кодирования передачи.

Еще одно соображение - заголовок Content-MD5. Отмененный ответ не будет проверяться. Я не уверен, как браузеры справляются с этим.

 Смежные вопросы

  • Нет связанных вопросов^_^