Время ожидания скрипта истекло до возвращения заголовков: script.php, реферер http://

Одно из моих приложений - рендеринг огромного PDF-файла. После настройки некоторых настроек на моем PHP я заметил, что suPHP выдает ошибку 500 страниц после 5 минут работы скрипта. Однако я не хочу отключать максимальное время, так как это веб-сервер с несколькими клиентами. Теперь кто-то сказал мне возможное решение:

Отключить сжатие GZIP на скрипте

Когда скрипт запущен, добавьте дополнительные заголовки, чтобы PHP знал, что он должен обрабатывать весь скрипт

Очистить вывод после рендеринга PDF

Тем не менее, я никогда не делал такой вещи, и я действительно не знаю, как это сделать. Может ли кто-нибудь указать мне правильное направление?

1 ответ

Решение

В основном кто-то сказал вам

  • рендеринг / создание PDF и вместо того, чтобы отправлять его по мере его создания, сохраняйте его в буфере.
  • Затем отправьте его пользователю с необходимыми заголовками.

Для создания pdf и сохранения в буфере изучите буферизацию вывода - функции ob_start(), ob_flush()

Для отправки содержимого буфера этот ответ должен помочь.

Я не уверен, как / если отключение сжатия gzip поможет, но это можно сделать с помощью методов ini_set.

Другие вопросы по тегам