Php усекать большие данные - PullRequest
0 голосов
/ 21 января 2019

Я работал над API, возвращающим данные как application/json, но мой echo json_encod($array); никогда полностью не отправлялся клиенту, поэтому я много боролся за функции, чтобы обнаружить, что базовая страница с phpinfo() отправляется клиенту только наполовину.

Символ зарядки в браузере остается активным, так как он заряжается, а инструменты разработчика говорят CAUTION: request is not finished yet Через несколько минут в журнале консоли появится net::ERR_CONNECTION_RESET 200 (OK) без изменений на странице.

Вы можете видеть то, о чем я говорю на http://213.209.253.6:7209/info.php

Я пытался с несколькими предложениями об изменении в .htaccess или php.ini или на странице.

  • установить тип содержимого на странице заголовка
  • установить x-Accel-Buffering: нет в шапке страницы
  • output_buffering Off
  • set max_input_vars
  • ob_flush () / ob_end_clean ()
  • настройка сжатия с moule_deflate

(Да, я всегда перезапускал apache, и да, я изменил правильный php.ini) ENV:

  • Apache 2.4.37 (построен на моем собственном)
  • Php 7.0.33 (построен на моем собственном)
  • Debian 8 i686
  • Тест API для Chrome 71 и Firefox 64

EDIT На самом деле эта проблема существует только при обращении к странице из моей внутренней сети. Я нахожусь за наттинг роутером, и порт 7209 отображается на ПК также во внутренней сети. Я пытался и с другим подключением я отображаю данные нормально ...

...