Информпортал «Интернет»

  • Создание и раскрутка сайта
  • Программирование
  • Как заработать на сайте
  • Компьютерные шутки

  • Gzip-сжатие на ваш сайт

    Для начала немножко теории: gzip-сжатие — это технология сжатия страниц сервера во время запроса, отсылка в сжатом состоянии, а потом распаковка браузером, которая позволяет сжимать страницы приблизительно в 3—4 раза (хотя возможно и больше если на странице много текстовой информации) и вследствие чего экономит траффик (для выделенщиков) и ускоряет загрузку страниц (для диалапщиков).

    Если вам идея о сжатом контенте понравилась, сначала нужно проверить, поддерживает ли gzip-сжатие PHP, для чего выполните код

    1. <?
    2. phpinfo(INFO_GENERAL);
    3. ?>

    и если на строке "Registered PHP Streams" будет присутствовать "compress.zlib", то ваш сервер может сжимать страницы. Далее, в самый верх страницы, которую нужно сжать, вставьте код

    1. if (strpos(' ' . $_SERVER['HTTP_ACCEPT_ENCODING'], 'x-gzip') !== false) {
    2. $miniBB_gzipper_encoding = 'x-gzip';
    3. }
    4. if (strpos(' ' . $_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip') !== false) {
    5. $miniBB_gzipper_encoding = 'gzip';
    6. }
    7. if (isset($miniBB_gzipper_encoding)) {
    8. ob_start();
    9. }
    10. function percent($a, $b) {
    11. $c = $b/$a*100;
    12. return $c;
    13. }

    Потом в конец той же страницы вставьтье:

    1. if (isset($miniBB_gzipper_encoding)) {
    2. $miniBB_gzipper_in = ob_get_contents();
    3. $miniBB_gzipper_inlenn = strlen($miniBB_gzipper_in);
    4. $miniBB_gzipper_out = gzencode($miniBB_gzipper_in, 2);
    5. $miniBB_gzipper_lenn = strlen($miniBB_gzipper_out);
    6. $miniBB_gzipper_in_strlen = strlen($miniBB_gzipper_in);
    7. $gzpercent = percent($miniBB_gzipper_in_strlen, $miniBB_gzipper_lenn);
    8. $percent = round($gzpercent);
    9. $miniBB_gzipper_in = str_replace('<!- GZipper_Stats ->', 'Original size: '.strlen($miniBB_gzipper_in).' GZipped size: '.$miniBB_gzipper_lenn.' Сompression: '.$percent.'%<hr>', $miniBB_gzipper_in);
    10. $miniBB_gzipper_out = gzencode($miniBB_gzipper_in, 2);
    11. ob_clean();
    12. header('Content-Encoding: '.$miniBB_gzipper_encoding);
    13. echo $miniBB_gzipper_out;
    14. }

    После этого страница будет приходить сжатой. Если хотите привести на странице статистику сжатия, просто вставьте комментарий:

    1. <!- GZipper_Stats ->

    в от место, где вы хотите её видеть. Она будет выводиться вот так:

    Original size: 8966
    GZipped size: 3693
    Сompression: 41%

    Рамиль

    21 августа 2006

    помощь в выборе товаров
    Сайт является кладезью информации, которая поможет любому покупателю сделать правельный выбор.

    народные средства лечения
    Большая инцеклопедия, в которой собраны сотни рецептов народной медицины и траволечения.

    обман и мошенничество
    Сайт про обман, аферы иnbsp;мошенничества в сети и мире.

    игры для кпк
    Сайт о карманных компьютерах — КПК или PDA, как их чаще называют. В архиве сайта множество программ и игр для КПК, как для Pocket PC, так и для Palm.