Intereting Posts
Laravel, создайте триггер MySQL из миграции HTTP PUT, DELETE и потоки ввода-вывода с PHP PHP Flush () не работает в Chrome Отправка большого электронного письма в PHP CodeIgniter – Правильный способ ссылки на другую страницу в представлении Двойные кавычки не копируются нормально. Как я могу их редактировать? Существует ли эквивалент call_user_func () для создания экземпляра нового класса? Создание векторной графики с помощью PHP Apple Push Notification Service APNS – Уведомления не поступают Doctrine2: лучший способ обработки многих-ко-многим с дополнительными столбцами в справочной таблице Есть ли в Perl динамические переменные типа PHP? Закажите SQL-запрос в наилучшем совпадении Почему бы не создать экземпляр нового объекта внутри конструктора объекта? Несколько баз данных с использованием PDO phpseclib – попытка подключения к коммутатору HP procurve возвращает ошибку: выполнение команды SSH не поддерживается

Выдает ли Apache 2 gzip json по умолчанию?

Я использую этот PHP-код для вывода json. По умолчанию apache gzip? Или, как я могу проверить, чтобы убедиться?

header('Content-type: application/json'); header('Cache-Control: max-age=0,no-cache,no-store,post-check=0,pre-check=0'); header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); echo json_encode($response); 

Вот что сделал трюк для меня:

(если у вас есть доступ к конфигурации Apache)

 AddOutputFilterByType DEFLATE application/json 

Я добавил эту строку непосредственно в /etc/apache2/mods-available/deflate.conf (поэтому она будет работать для каждого json-файла на веб-сервере), возможно, где-то еще лучше подходит для вашего использования (например, если вы хотите включить json сжатие для одного веб-приложения, а не по умолчанию).

edit: В инструментах разработчика google chromes вы можете легко проверить, поддерживается ли ваш контент сжатым или несжатым: https://webmasters.stackexchange.com/a/4613

Никакой gzip обычно не используется, вы должны принудительно выполнять это самостоятельно.

В простейшем случае вам просто нужно добавить эту строку php:

 ob_start("ob_gzhandler"); 

См. Также официальную документацию php .