Я обнюхивал заголовок ответа одного из своих сайтов и, по-видимому, не использовал сжатие http для доставки ответов, потому что я не вижу Content-Encoding: gzip в заголовке ответа.
Но странно то, что phpinfo () показывает мне HTTP_ACCEPT_ENCODING: gzip, deflate, sdch
Я использую облачный сайт в стойке (общий хостинг, не могу получить доступ к httpdconfig), и я действительно хочу активировать сжатие http, но ребята из службы поддержки говорят мне, что если phpinfo () говорит это, он уже включен.
Спасибо.!
Что вам нужно сделать, так это добавить этот php-код в начало любых файлов PHP, которые вы хотите использовать для сжатия:
<?php
ob_start("ob_gzhandler");
?>
Часто файл заголовка включается во все файлы, хорошим примером является файл конфигурации базы данных. Пока эта строка кода добавляется до того, как ваша программа выполнит print()
или echo()
тогда ты золотой.
Это будет буферизировать весь вывод, создаваемый страницей PHP, а затем сжать его перед отправкой в браузер. Если вы просто обслуживаете плоские файлы html, вы можете написать простую страницу доступа PHP для чтения файла .html и его печати:
<?php
ob_start("ob_gzhandler");
print(file_get_contents("./html/somefile.html"));
?>
HTTP_ACCEPT_ENCODING
означает, что браузер принимает эти кодировки. Это не значит, что сервер sending
эти кодировки - это заголовок на стороне клиента.