GZIP - сжатие - Visavi.net https://visavi.net/ RSS - Visavi.net https://visavi.net/assets/img/images/logo_small.png RSS - Visavi.net https://visavi.net/ admin@visavi.net (admin) admin@visavi.net (admin) Sun, 13 Apr 2025 00:20:34 +0300 Это куски кода у меня используются, менять ниче не стал возможно лишнее есть https://visavi.net/topics/7608/210857 GZIP - сжатие Azzido Sat, 24 Jul 2010 13:52:00 +0400 Сообщения https://visavi.net/topics/7608/210857 <pre class="prettyprint">&lt;?php //--------------------------- Подсчёт сжатия документа -------------------------// if(isset($buffer_compression_gzip)){ $buffer_compression_percent=100-(100/(ob_get_length()/strlen(ob_gzencode(ob_get_contents())))); if($buffer_compression_percent&gt;0 and $buffer_compression_percent&lt;100){ echo &#039;gzip&#58; &#039;.round($buffer_compression_percent,1).&#039;% / &#039;;} } elseif(isset($buffer_compression_deflate)){ $buffer_compression_percent=100-(100/(ob_get_length()/strlen(ob_gzdeflate(ob_get_contents())))); if($buffer_compression_percent&gt;0 and $buffer_compression_percent&lt;100){ echo &#039;deflate&#58; &#039;.round($buffer_compression_percent,1).&#039;% / &#039;;} } elseif(isset($buffer_compression_x_gzip)){ $buffer_compression_percent=100-(100/(ob_get_length()/strlen(ob_gzcompress(ob_get_contents())))); if($buffer_compression_percent&gt;0 and $buffer_compression_percent&lt;100){ echo &#039;x-gzip&#58; &#039;.round($buffer_compression_percent,1).&#039;% / &#039;;} } //--------------------------- Подсчёт сжатия документа -------------------------//</pre> https://visavi.net/topics/7608/210840 GZIP - сжатие Azzido Sat, 24 Jul 2010 13:24:07 +0400 Сообщения https://visavi.net/topics/7608/210840 <pre class="prettyprint">&lt;?php //----------------------- Буферизация и сжатие документа -----------------------// if(extension_loaded(&#039;zlib&#039;) and ini_get(&#039;zlib.output_compression&#039;)&lt;&gt;&#039;On&#039; and ini_get(&#039;output_handler&#039;)&lt;&gt;&#039;ob_gzhandler&#039; and ini_get(&#039;output_handler&#039;)&lt;&gt;&#039;zlib.output_compression&#039;){ if(isset($_SERVER&#91;&#039;HTTP_ACCEPT_ENCODING&#039;])){$accept_encoding=$_SERVER&#91;&#039;HTTP_ACCEPT_ENCODING&#039;];} elseif(isset($_SERVER&#91;&#039;HTTP_TE&#039;])){$accept_encoding=$_SERVER&#91;&#039;HTTP_TE&#039;];} else{$accept_encoding=&#039;no_accept_encoding&#039;;} if(strpos($accept_encoding,&#039;gzip&#039;)!==FALSE){ function ob_gzencode($buffer){ return gzencode($buffer,1); } header(&#039;Content-Encoding&#58; gzip&#039;); ob_start(&#039;ob_gzencode&#039;); $buffer_compression_gzip=TRUE; } elseif(strpos($accept_encoding,&#039;deflate&#039;)!==FALSE){ function ob_gzdeflate($buffer){ return gzdeflate($buffer,1); } header(&#039;Content-Encoding&#58; deflate&#039;); ob_start(&#039;ob_gzdeflate&#039;); $buffer_compression_deflate=TRUE; } elseif(strpos($accept_encoding,&#039;x-gzip&#039;)!==FALSE){ function ob_gzcompress($buffer){ $size=strlen($buffer); $crc=crc32($buffer); $buffer=gzcompress($buffer,1); $buffer=substr($buffer,0,strlen($buffer)-4); return &quot;\x1f\x8b\x08\x00\x00\x00\x00\x00&quot;.$buffer.pack(&#039;V&#039;,$crc).pack(&#039;V&#039;,$size); } header(&#039;Content-Encoding&#58; x-gzip&#039;); ob_start(&#039;ob_gzcompress&#039;); $buffer_compression_x_gzip=TRUE; }else{ ob_start(); }}else{ ob_start(); } //----------------------- Буферизация и сжатие документа -----------------------//</pre> https://visavi.net/topics/7608/210839 GZIP - сжатие Azzido Sat, 24 Jul 2010 13:23:25 +0400 Сообщения https://visavi.net/topics/7608/210839 11, насколько я помню таким способом не проверяется поддерживает ли браузер сжатие, так что с браузера который не поддерживает сжатие твой сайт станет недоступен, я вот например не рискнул эту опцию включить, телефоны все таки, мало ли на коком кирпиче на сайт зайдут, а для web сайта это самое то. https://visavi.net/topics/7608/210816 GZIP - сжатие Azzido Sat, 24 Jul 2010 12:20:14 +0400 Сообщения https://visavi.net/topics/7608/210816 Точно, так верней, если конечно implicit flush в htaccess или в других настройках сервера не включена. https://visavi.net/topics/7608/210134 GZIP - сжатие Azzido Fri, 23 Jul 2010 13:04:57 +0400 Сообщения https://visavi.net/topics/7608/210134 <pre class="prettyprint">&lt;?php ob_start (&#039;ob_gzhandler&#039;); echo &#039;Hello, world!&#039;; ob_end_flush (); ?&gt;</pre> так будет правильнее https://visavi.net/topics/7608/210112 GZIP - сжатие Studentsov Fri, 23 Jul 2010 12:20:22 +0400 Сообщения https://visavi.net/topics/7608/210112 <pre class="prettyprint">&lt;?php ob_start(&#039;ob_gzhandler&#039;); echo &#039;Hello, world!&#039;;</pre> https://visavi.net/topics/7608/209798 GZIP - сжатие Azzido Fri, 23 Jul 2010 00:21:21 +0400 Сообщения https://visavi.net/topics/7608/209798 Можно конечно организовать самому с помощью функций gzdeflate(); gzencode(); или же gzcompress(); самому проверяя какой тип сжатия поддерживает браузер, но с ob_gzhandler самый выгодный вариант... https://visavi.net/topics/7608/209796 GZIP - сжатие Azzido Fri, 23 Jul 2010 00:17:21 +0400 Сообщения https://visavi.net/topics/7608/209796 Совершенно неверно. В самом верху страницы, до первой конструкции вывода в браузер (echo, print и т.д.) пишем ob_start(&#039;ob_gzhandler&#039;); эта функция сама определит какой тип сжатия поддерживает браузер и поддерживает ли вообще, и отправит сама нужные заголовки и сжатый контент. https://visavi.net/topics/7608/209790 GZIP - сжатие Azzido Fri, 23 Jul 2010 00:12:56 +0400 Сообщения https://visavi.net/topics/7608/209790 <a href="http://snippets.pp.ru/article/53/" target="_blank" rel="nofollow">http://snippets.pp.ru/article/53/</a><br> <a href="http://snippets.pp.ru/article/99/" target="_blank" rel="nofollow">http://snippets.pp.ru/article/99/</a> https://visavi.net/topics/7608/139627 GZIP - сжатие Игорь Wed, 31 Mar 2010 00:50:26 +0400 Сообщения https://visavi.net/topics/7608/139627 Будьте добры расписаный пример.. И вывод.. И если можно какой нибудь мини фак.. Заранее благодарен https://visavi.net/topics/7608/139592 GZIP - сжатие Sudzuka Tue, 30 Mar 2010 23:41:35 +0400 Сообщения https://visavi.net/topics/7608/139592