Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Упаковка страниц.

Сообщения:  [1-10]   [11-14] 

 
 автор: FreeMAN   (09.11.2005 в 14:07)   письмо автору
 
   для: 12345   (09.11.2005 в 13:49)
 

) Нет, вопрос не по распаковке на клиенте, а по упаковке на сервере:
клиент всё прекрасно понимает, но данные к нему приходят как есть (не сжатые)
в начале скрипта написано вот так:

<? session_start();
require_once 
"gzip/gz.php";
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<META http-equiv="Content-Type" conte...............


gzip/gz.php:

<?php ## Отображение параметров GZip-сжатия.
require_once "lib/config.php"
// Функция только устанавливает значение Cookie page_size_after.
function ob_saveCookieAfter($s) { 
  
setcookie("page_size_after"strlen($s));
  return 
$s
}
// Аналогично, но для Cookie page_size_after.
function ob_saveCookieBefore($s) { 
  
setcookie("page_size_before"strlen($s));
  return 
$s
}
// Устанавливаем конвейер обработчиков.
ob_start("ob_saveCookieAfter");
ob_start("ob_gzhandler"9);
ob_start("ob_saveCookieBefore");
// Дальше можно выводить любой текст - он будет сжат.
?>


а внизу Java Script, считывающий куки в которые было записано кол-во бит:

...................................
 <!-- Выводим информацию о сжатии (в отдельном шаблоне). -->
<b><br><br><?include "gzip/gz.htm"?></b>
  </center>
</body>
</html>


gzip/gz.htm:

<!-- Код на JavaScript, отображающий параметры GZip-сжатия. -->
<script language="JavaScript"><!--
// Возвращает Cookie с указанным именем.
function getCookie(name) {
  var p = name + "=";
  var si = document.cookie.indexOf(p);
  if (si == -1) return null;
  var ei = document.cookie.indexOf(";", si + p.length);
  if (ei == -1) ei = document.cookie.length;
  return unescape(document.cookie.substring(si + p.length, ei));
}
var b = getCookie("page_size_before");
var a = getCookie("page_size_after");  
if (a && b) {
  document.write(
    "[GZip: " +
    "<span title='стало'>"+a+"</span>/" +
    "<span title='было'>"+b+"</span> " +
    "<span title='откусили'>("+(100-Math.round(a/b*100))+"%)</span>" +
    "]"
  )
} else {
  document.write("[GZip выключен]");
}
//--></script>


В результате получается: стало = было следовательно сжатие 0
вот я и спрашивал, может кто знает в связи с чем это может быть связано?

   
 
 автор: 12345   (09.11.2005 в 13:49)   письмо автору
 
   для: FreeMAN   (09.11.2005 в 12:58)
 

Вопрос ведь о распаковке на клиенте? Если у него не стоит никакой программы распаковки, то он пользуется только прозрачным сжатием по протоколу v.42bis - MNP-5 (если не напутал); v.90-92 его содержит. Это среднее zip-сжатие, которое ощутимо сжимает текст, это можно видеть при работе с модемом (html передаётся быстрее, чем позволял бы модем без сжатия, но jpg - нет). Но если надо сжать дополнительно, то существуют сжиматели JS-кода, тоже хорошо работают на уровне текста. (Этот текст по MNP-5 ещё сжимается.) Они упоминались здесь в темах.

   
 
 автор: FreeMAN   (09.11.2005 в 12:58)   письмо автору
 
   для: JC_Piligrim   (15.07.2005 в 12:39)
 

А вот у меня такая ситуация:
есть довольно большой код HTML (страничка вобщем ~200 Kb) и чтоб её на части не разбивать, решил я попробовать сжатие gzip. Почитал книжку (PHP5 в подлиннике - Котеров...), посмотрел листинги к этой книге (заодно и прикрутил их к страничке).
Вроде бы и работет, но не сжимает ((
может надо в настройках апача или пхп переменные какие переопределить???
подскажите плиз, кто что знает
З.Ы.: сайт http://www.els.usurt.ru/process.php.

   
 
 автор: JC_Piligrim   (15.07.2005 в 12:39)   письмо автору
 
   для: Bronepoz[)   (15.07.2005 в 11:08)
 

Ребят, зачем мучится? Есть очень неплохой модуль для gzip-сжатия. Зовётся "PHP4 HTTP Compression Speeds up the Web". Я у себя такой ставлю. Вот некоторые ссылки:

http://mike.nov.ru/rus/read/web/GZip-PHP-Apache/
http://www.codenet.ru/webmast/php/Gzip-PHP-Apache.php
http://www.zend.com/codex.php?id=317&single=1

   
 
 автор: cheops   (15.07.2005 в 12:33)   письмо автору
 
   для: Bronepoz[)   (15.07.2005 в 11:15)
 

Вы может отправить её на e-mail, например, мой simdyanov@softtime.ru или выложить её прямо тут - мы её отредактируем и выложим.

   
 
 автор: Bronepoz[)   (15.07.2005 в 11:15)   письмо автору
 
   для: cheops   (14.07.2005 в 21:58)
 

А как я должен добавить статью? Отправить на мыло или где-то есть кнопка "добавить статью"?

   
 
 автор: Bronepoz[)   (15.07.2005 в 11:08)   письмо автору
 
   для: Саня_   (15.07.2005 в 00:46)
 

Я тоже читаю "Хакер". Именно после прочтения статьи я задал вопрос. Php accelerator - это же дополнение к ядру, то есть на хостинге я не могу подключить его. Поэтому я ищу альтернативные варианты.

   
 
 автор: Саня_   (15.07.2005 в 00:46)
 
   для: Bronepoz[)   (14.07.2005 в 18:59)
 

По поводу ускорения загрузки страниц.
Прочитал я в "Хакере" статью про "phpaccelerator", который реально ускоряет загрузку страниц.
И нет никакой мороки с gzip'ом. Сначала идёт запрос клиенту: "А включен ли у тебя gzip???", если ответ будет утвердительный, phpaccelerator отправит сжатую страницу. Иначе отдаст AS IS.
Одно огорчает - нету билда под винду.

http://www.php-accelerator.co.uk/

   
 
 автор: cheops   (14.07.2005 в 21:58)   письмо автору
 
   для: Bronepoz[)   (14.07.2005 в 20:57)
 

Конечно, создание статей приветствуется обеими руками :). Причём вы можете не ограничивать себя только, PHP, принимаются также статьи по JavaScript, CSS и вообще по сетевым технологиям.

   
 
 автор: Akira   (14.07.2005 в 21:04)   письмо автору
 
   для: Bronepoz[)   (14.07.2005 в 20:57)
 

Думаю, что могу ответить на этот вопрос =) Конечно да =)

   

Сообщения:  [1-10]   [11-14] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования