У меня есть webapp на сервере NGinx. Я установил gzip on
в файле conf, и теперь я пытаюсь посмотреть, работает ли он. YSlow говорит, что нет, но 5 из 6 сайтов, которые делают тест, говорят, что это так. Как я могу получить определенный ответ на этот вопрос и почему существует разница в результатах?
Как узнать, обслуживает ли мой сервер Gzip-контент?
Ответ 1
Похоже, что один из возможных ответов - неудивительно, curl
:
$ curl http://example.com/ --silent --write-out "%{size_download}\n" --output /dev/null
31032
$ curl http://example.com/ --silent -H "Accept-Encoding: gzip,deflate" --write-out "%{size_download}\n" --output /dev/null
2553
Во втором случае клиент сообщает серверу, что он поддерживает кодирование содержимого, и вы можете видеть, что ответ был действительно короче, сжат.
Ответ 2
Обновление
Chrome изменил способ сообщения (см. оригинальный ответ, если интересно). Вы можете сказать, используя Инструменты разработчика (F12). Перейдите на вкладку Сеть, выберите файл, который вы хотите проверить, а затем посмотрите на вкладку Заголовки справа. Если вы заархивированы, вы увидите это в Content-Encoding.
В этом примере slider.jpg действительно распаковывается.
Сравните это с той самой страницей, на которой вы находитесь, и посмотрите на файл png, вы не увидите такого обозначения.
Просто чтобы быть ясно, это не потому, что один JPG, а другой PNG. Это потому, что один взломан, а другой нет.
Предыдущий ответ
В Chrome, если вы откроете Инструменты разработчика и перейдете на вкладку Сеть, то при отсутствии сжатия будет отображаться следующее:
И следующее, если есть сжатие:
Другими словами, одно и то же число сверху и снизу означает отсутствие сжатия.
Ответ 3
См. в заголовках ответов. В FireFox вы можете проверить Firebug.
Content-Encoding gzip
Если сервер поддерживает gzip-контент, это должно отображаться.
Ответ 4
Вы можете быстро использовать веб-службу, например: http://www.whatsmyip.org/http-compression-test/
Инструмент Google Apps "Аудит" в инструментах разработчика также пригодится.
Ответ 5
В новой версии Chrome, Инструменты разработчика> сеть, вы можете щелкнуть правой кнопкой мыши по имени столбца, выбрать опцию кодирования содержимого и добавить этот столбец (черный ящик на изображении).
и если вы хотите увидеть размер этого gzip-контента как @Outfast Source - тогда вы можете нажать на значок рядом с View (отображается как зеленое поле на изображении).
так что вы можете видеть, какой контент поддерживает gzip.
Ответ 6
Я написал этот script на основе ответа zoul:
#!/bin/bash
URL=$1
PLAIN="$(curl $URL --silent --write-out "%{size_download}\n" --output /dev/null)"
GZIPPED="$(curl $URL --silent -H "Accept-Encoding: gzip,deflate" --write-out "%{size_download}\n" --output /dev/null)"
if test $PLAIN -gt $GZIPPED
then echo "supported"
else echo "unsupported"
fi
Пример:
$ ./script.sh https://example.com/
Ответ 7
Еще один полезный инструмент: http://gzipwtf.com
Это единственный инструмент, который я видел, который проанализирует вашу страницу и найдет все ресурсы, на которые ссылаются ссылки (css, js файлы и т.д.), и скажет вам, если каждый из них gzipped, а не просто говорит вам, если индексная страница gzipped.
Также предоставляет другую полезную статистику (время загрузки ресурса, скорость и т.д.)
Ответ 8
Ни один из вышеперечисленных онлайн-инструментов не смог проверить мой URL-адрес, который был XML файлом, однако это верно:
http://www.feedthebot.com/tools/gzip/