Квартиры, дома, земельные участки Краснодарского края без посредников. Объявления собственников недвижимости.
Реклама здесь
Главная
Примеры PHP Примеры JavaScript Примеры Ajax Примеры CSS,HTML

Кеширование и GZip-сжатие для всех php, js, css, html, shtml, и htm файлов

gzip.php

<?php
if(isset($_SERVER['HTTP_ACCEPT_ENCODING']) && substr_count($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip'))
{
ob_start('ob_gzhandler');
/*header("Content-type: text/css; charset: UTF-8");
header("Cache-Control: must-revalidate");
$offset = 60 * 60 ;
$ExpStr = "Expires: " .
gmdate("D, d M Y H:i:s",
time() + $offset) . " GMT";
header($ExpStr);
*/
}else
ob_start();

?>
Скопировать в буфер

Готовый .htaccess для сжатия и кеширования "налету":

################ Expires Control ################
ExpiresActive On
ExpiresDefault A0
<FilesMatch \"\.(gif|jpg|jpeg|png|swf)$\">
# 2 weeks
ExpiresDefault A1209600
Header append Cache-Control \"public\"
</FilesMatch>
<FilesMatch \"\.(xml|txt|html)$\">
# 2 hours
ExpiresDefault A7200
Header append Cache-Control \"proxy-revalidate\"
</FilesMatch>
<FilesMatch \"\.(js|css)$\">
# 3 days
ExpiresDefault A259200
Header append Cache-Control \"proxy-revalidate\"
</FilesMatch>

################## GZip Files ###################
<FilesMatch \"\.js$\">
AddHandler application/x-httpd-php .js
php_value default_mimetype \"text/javascript\"
</FilesMatch>
<FilesMatch \"\.css$\">
AddHandler application/x-httpd-php .css
php_value default_mimetype \"text/css\"
</FilesMatch>
<FilesMatch \"\.(htm|html|shtml)$\">
AddHandler application/x-httpd-php .html
php_value default_mimetype \"text/html\"
</FilesMatch>
php_value auto_prepend_file /absolute/path/to/gzip.php
gzip-css.php

<?php
ob_start 
("ob_gzhandler");
header ("content-type: text/css; charset: UTF-8");
header ("cache-control: must-revalidate");
$offset 60 60;
$expire "expires: " gmdate ("D, d M Y H:i:s"time() + $offset) . " GMT";
header ($expire);
?>
Скопировать в буфер

Для сжатия CSS и JS файлов добавьте в .htaccess следующий код:

AddHandler application/x-httpd-php .css
php_value auto_prepend_file gzip-css.php
php_flag zlib.output_compression On

gzip-css.php, который удаляет из css файла комментарии, пробелы:


<?php
header
('Content-type: text/css');
  
ob_start("compress");
  function 
compress($buffer) {
    
/* remove comments */
    
$buffer preg_replace('!/\*[^*]*\*+([^/][^*]*\*+)*/!'''$buffer);
    
/* remove tabs, spaces, newlines, etc. */
    
$buffer str_replace(array("\r\n""\r""\n""\t"'  ''    ''    '), ''$buffer);
    return 
$buffer;
  }

  
/* все ваши css файлы */
  
include('master.css');
  include(
'grid.css');
  include(
'print.css');
  include(
'top.css');

  
ob_end_flush();
?>
Скопировать в буфер
Любые кровельные материалы - ремонт мягкой кровли. Отделка стен, пола, потолка.
- Getz блок-фара ксенон цена стоимость.

© Copyright 2008-2012 by KDG