Перейти к содержанию
halfhope

[Поддержка] MCLite - Автоматическое сжатие CSS

Рекомендуемые сообщения

MCLite - Автоматическое сжатие CSS


MCLite - Автоматическое сжатие CSS


Как работает MCLite

Работает он по тому же принципу, что и MCJ. Т.е. перед тем как послать страницу клиенту он сканирует ее код, находя в нем все CSS файлы, и обрабатывает их в соответствии с настройками, а настроек этих целая куча (как и библиотек для минимизации). После обработки он сохраняет новые (сжатые) CSS файлы во временную папку. Затем подменяет ссылки на минимизированные CSS файлы в коде страницы. Таким образом оригинальные CSS файлы остаются нетронутыми. После этого отправкой файлов стилей для страницы занимается сервер, а не PHP. Сжимаются и передаются только те стили, которые используются на посещаемой странице.

Возможности MCLite

  • Наличие нескольких библиотек для минимизации CSS
  • Возможность вставлять в файлы стилей изображения в кодировке base64, вне зависимости от выбранного минимизатора (преимущества)
  • Упаковка файлов стилей алгоритмом gzip во время создания файла. Т.е. не будет тратится время на сжатие "на лету"
  • Возможность использовать Domain CDN для отдачи CSS и изображений
  • Имеется функция оптимизации базы данных
  • Несколько режимов объединения файлов
  • Возможность исключить определенные файлы из обработки/объединения/минимизации
  • Имеется функция сжатия HTML (на лету, без кэширования)
  • Наличие нескольких библиотек для сжатия HTML
  • Минимум файлов
  • Удобный менеджер кэша со статистикой сжатия
  • Наличие деинсталлятора (удаляет вместе с файлами и записями модуля)

Поддерживаемые минимизаторы

CSS:

  • [CSSMin] Joe Scylla
  • [CSSMin Regex] Shashakhmetov Talgat
  • [YUI CSS Compressor php port] Tubal Martin
  • [CanCSSMini] andi
  • [Crunch CSS] Shirley Kaiser

HTML:

[*][Minify HTML] Stephen Clay

[*]

[htmlMin Regex] Shashakhmetov Talgat
[*][Crunch HTML] Shirley Kaiser
[/list]
Minify HTML рекомендую использовать только с кэшированием HTML на стороне сервера, код сжимает хорошо, но медленный. Сводную таблицу сжатия можно посмотреть здесь.


Поддерживаемые версии
  • Все версии, начиная от 1.5.1 до 1.5.6.4 включительно.

Инструкция по установке/обновлению



Обновление

Установка

Шаг 1. Копирование файлов

Скопировать содержимое папки "upload" в корневую директорию сайта.


Шаг 2. Редактирование файлов

В файле "index.php" перед строкой $response->output(); (в самом конце файла)
добавить:

В файле "system/library/response.php" строку private $output; (5 строка) заменить на public $output;

Шаг 3. Добавление записей в базу данных

Скопировать в корневую директорию файл "install.php". Выполнить его через адресную строку браузера. Например, http://адрес-сайта/install.php. Он добавит новые значения в базу данных.

После выполнения обязательно удалить файл!!!

Шаг 4. Настройка привилегий в OpenCart

В административной панели сайта перейти в "Система->Пользователи->Группы пользователей". Напротив строки "Главный администратор" нажать "изменить".

В списках "Разрешен просмотр" и "Разрешено внесение изменений" поставить галочку напротив "mcj/setting", либо нажать "Выделить все". Сохранить.

Шаг 5. Настройка .htaccess

Для использования статического сжатия файлов в файл .htaccess необходимо добавить:

AddType text/css .css .cssgzAddEncoding x-gzip .cssgz 

Так же можете посмотреть содержимое рекомендуемого мной .htaccess по адресу http://mcj.halfhope.ru/htaccess.html

  1. Скопировать все файлы из папки upload в корень сайта (с заменой)
//MCLiteif (preg_match('/head>/im', $response->output) && !defined('DIR_CATALOG')) {    $loader->library('mclite/mclite.class');    $mclite = new mclite($registry, $response->output);    $response->output = $mclite->output;} 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 Warning: require(/var/www/natur101/data/www/ou.com/system/library/mclite/lib/JSMin.php): failed 
to open stream: No such file or directory in /var/www/natur101/data/www/ou.com/system/library/mclite/mclite.class.php on line 817
Fatal error: require(): Failed opening required '/var/www/natur101/data/www/ou.com/system/library/mclite/lib/JSMin.php' (include_path='.:/usr/share/pear:/usr/share/php') in /var/www/natur101/data/www/ou.com/system/library/mclite/mclite.class.php on line 817

прикольно в футере висит

 

поставил в "Общие" - HTMLMin Regex и  в "Настройка сжатия CSS" - CSSMin Regex ошибки пропали .

Я так понимаю он тесно с кешем работает . У меня крон-настроен на удаление кеша каждый день. Есть ли смысл его использовать  ? 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 Warning: require(/var/www/natur101/data/www/ou.com/system/library/mclite/lib/JSMin.php): failed 
to open stream: No such file or directory in /var/www/natur101/data/www/ou.com/system/library/mclite/mclite.class.php on line 817
Fatal error: require(): Failed opening required '/var/www/natur101/data/www/ou.com/system/library/mclite/lib/JSMin.php' (include_path='.:/usr/share/pear:/usr/share/php') in /var/www/natur101/data/www/ou.com/system/library/mclite/mclite.class.php on line 817

прикольно в футере висит

 

 

Ой, сейчас поправлю

 

[uPD] Проблема была в классе CssMin он использует JsMin для сжатия expression выражений в файлах стилей. Исправлено добавлением класса JavaScript минимизатора JsMin. 

Изменено пользователем halfhope

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ой, сейчас поправлю

 

[uPD] Проблема была в классе CssMin он использует JsMin для сжатия expression выражений в файлах стилей. Исправлено добавлением класса JavaScript минимизатора JsMin. 

Что посоветуете для сжатия использовать,какой класс  ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Как работают CSS минимизаторы здесь говорить не буду.

  1. Скажу только, что CssMin работает на как все остальные, но он иногда с ошибками обрабатывает код @media и т.д. Т.е. у адаптивных шаблонов может полететь адаптивная верстка. Но, все же он первый в списке рекомендуемых.
  2. Второй в списке это YUI CSS Compressor php port это порт YUI CSS Compressor для PHP, про него ничего конкретного сказать не могу, сжимает хорошо и качественно.
  3. Третий в списке это CanCSSMini, представляет из себя простой минимизатор на регулярных выражениях. 

Рекомендую проверять и тестировать именно в этом порядке. Остальные минимизаторы так себе, просто убирают пробелы, комментарии и переносы строк. Сделал сравнительную таблицу по скорости и степени сжатия каждого минимизатора ее можно посмотреть здесь.

Изменено пользователем halfhope

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

Я так понимаю он тесно с кешем работает . У меня крон-настроен на удаление кеша каждый день. Есть ли смысл его использовать  ? 

 

 

Нет, не имеет смысла. MCJ не использует встроенную в OpenCart систему кэширования, для отдачи используются только статический файлы. Он просто сканирует используемые на странице стили, собирает их содержимое в один файл, минимизирует, сжимает и сохраняет в отдельный файл с уникальным именем (хеш названий файлов, которые в нем находятся). А при вторичном посещении сайта он опять сканирует используемые стили, вычисляет уникальное имя файла и проверяет есть он или нет. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Столкнулся с такими проблемами:

1. При включении Gzip сжатие, не указан срок действия кэша

2. При сжатии HTML при помощи библиотек Crunch_HTML и HTMLMin Regex, в карточке товара не работают "+" и "-" кол-ва товара. При использовании библиотеки Minify HTML данной проблемы нет, но вот медленный.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1. За отправку заголовков отвечает сервер, если у Вас стоит Apache, то измените файл .htaccess как написано в рекомендации. Только что исправил секцию <IfModule mod_headers.c>

2. Сжатие HTML добавлено для тех случаев, когда используется кэширование вывода на стороне сервера. Без него не критично, все равно в большинстве случаев весь траффик сжимается Gzip-ом.

 

При использовании Crunch HTML и если у Вас достаточно знаний, то можете посмотреть в коде страницы что именно вызывает ошибку и закомментировать ненужную строку в файле "system\library\mclite\lib\Crunch_HTML.php".

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

У меня стоит ngnix. Что делать?

Файл "system\library\mclite\lib\Crunch_HTML.php" открыл посмотрел и ничего не понял.

Я не программист, помогите пожалуйста разобраться!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Аналог файла .htaccess у nginx - файл nginx.conf в него нужно добавить 

location ~* \.(?:ico|css|js|gif|jpe?g|png|cssgz|jsgz)$ {
    expires 30d;
    add_header Pragma public;
    add_header Cache-Control "public";
}

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

Аналог файла .htaccess у nginx - файл nginx.conf в него нужно добавить 

location ~* \.(?:ico|css|js|gif|jpe?g|png|cssgz|jsgz)$ {
    expires 30d;
    add_header Pragma public;
    add_header Cache-Control "public";
}

Да у меня помесь бульдога с носорогом, то есть ngnix и apache, ибо файл httaccess присутствует, а вот nginx.conf - нет.

Тип сервера: nginx admin

ПО сервера: PHP/5.3.29

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В Вашем случае Apache используется для php, а nginx для отдачи статики (css, js, jpg файлов). Если У Вас выделенный сервер vps/vds, то ищите этот файл. Если shared хостинг, то можете спросить о настройке этого файла тех. поддержку. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В Вашем случае Apache используется для php, а nginx для отдачи статики (css, js, jpg файлов). Если У Вас выделенный сервер vps/vds, то ищите этот файл. Если shared хостинг, то можете спросить о настройке этого файла тех. поддержку. 

 

В следующей версии постараюсь добавить опциональную динамическую отдачу CSS со всеми нужными заголовками, только для того, чтобы Google Page Speed не ругался. Т.к., к сожалению, пользователи все время говорят мне о том, что Google Page Speed написал мне, что что-то не включено.

 

Google Page Speed показывает лишь наличие или отсутствие некоторых паттернов клиентской оптимизации, если какого-то паттерна нет, это еще не значит, что сайт тормозит. Сейчас MCLite объединяет и сжимает CSS, а так же ресурсы в них, для того, чтобы уменьшить количество запросов к серверу и сократить очередь загрузки файлов. Помните, что к каждому проекту нужен свой подход. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В следующей версии постараюсь добавить опциональную динамическую отдачу CSS со всеми нужными заголовками, только для того, чтобы Google Page Speed не ругался. Т.к., к сожалению, пользователи все время говорят мне о том, что Google Page Speed написал мне, что что-то не включено.

 

Google Page Speed показывает лишь наличие или отсутствие некоторых паттернов клиентской оптимизации, если какого-то паттерна нет, это еще не значит, что сайт тормозит. Сейчас MCLite объединяет и сжимает CSS, а так же ресурсы в них, для того, чтобы уменьшить количество запросов к серверу и сократить очередь загрузки файлов. Помните, что к каждому проекту нужен свой подход. 

Очень нужное обновление! Буду ждать!

Кстати со стороны сервера в конфиге указал "expires 7d", но безуспешно( Все по прежнему

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Очень нужное обновление! Буду ждать!

Кстати со стороны сервера в конфиге указал "expires 7d", но безуспешно( Все по прежнему

C трудом, но разобрался, теперь все работает! Тех поддержка сделала сжатие Gzip на своей стороне.

СПАСИБО автору за классный модуль да еще и бесплатный! Теперь по PageSpeed Insights имею 88-91 в зависимости от скорости ответа сервера... Вот бы еще JavaScript и CSS в футтер запихнуть, но читал что это нереально(

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

C трудом, но разобрался, теперь все работает! Тех поддержка сделала сжатие Gzip на своей стороне.

СПАСИБО автору за классный модуль да еще и бесплатный! Теперь по PageSpeed Insights имею 88-91 в зависимости от скорости ответа сервера... Вот бы еще JavaScript и CSS в футтер запихнуть, но читал что это нереально(

 

CSS нельзя запихивать в футер, они должны загружаться самыми первыми, это Вам даже Google PageSpeed не посоветует. А насчет блокирующего JavaScript я уже писал здесь

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

CSS нельзя запихивать в футер, они должны загружаться самыми первыми, это Вам даже Google PageSpeed не посоветует. А насчет блокирующего JavaScript я уже писал здесь

Ну да, согласен, я больше про скрипт говорил, так как именно на них ругается вышеупомянутый сервис.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

День добрый!

Поставил по инструкции на 1.5.6.4 в итоге, когда пытаюсь зайти в настройки, получаю белый экран.

Подскажите плз в чем может быть дело.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вброшу свои 5 копеек. Решил пощупать модуль. При прописывании рекомендованной строчки в htaccess

# 120 days
    <FilesMatch "\.(html|htm|php)$">
        Header set Cache-Control "max-age=7776000, private, must-revalidate"
    </FilesMatch>

 

в ИЕ начинаются траблы при добавлении товаров через модуль cartpopup + в модуле simple. Ослик некорректно отображает изменения. Например: при оформлении заказа через симплу и удалении этого товара ИЕ не редиректит в пустую корзину, а остается в модуле оформления с этим же товаром. После принудительного обновления страницы выдает, что корзина пуста. Ну и с модулем всплывающей корзины примерно та же трабла. Визуально добавляет 1 товар нормуль, а при попытках добавления других, отображает всё тот же первый товар.

 

Всё это мелочи жизни конечно. В остальных браузер как всегда всё корректно отрабатывает :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Добрый день ! 
Поставил модуль, отлично работает, увеличил балы в PageSpeed Insights, автору большое спасибо!

После включения CDN в модуле,посыпалась ошибка на странице оформелнеия заказ(установлен Simple) при  переключении "Зарегистрироваться" - Да/Нет, обновляются списки полей и выскакиевает ошибка "Notice: Undefined offset: 0 in /home/ecoevexm/public_html/system/library/mclite/mclite.class.php on line 380"

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Здравствуйте, автор. Установил ваш модуль. Переключал различные варианты сжатия, но результат показывает, что ничего даже на 1% не сжимается. Проверял с помощью инструмента Google https://developers.google.com/speed/pagespeed/insights/?url=http%3A%2F%2Fsanan-cctv.ru%2F&tab=mobile

 

Мой сайт http://sanan-cctv.ru

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Здравствуйте, автор. Установил ваш модуль. Переключал различные варианты сжатия, но результат показывает, что ничего даже на 1% не сжимается. Проверял с помощью инструмента Google https://developers.google.com/speed/pagespeed/insights/?url=http%3A%2F%2Fsanan-cctv.ru%2F&tab=mobile

 

Мой сайт http://sanan-cctv.ru

 

Добрый вечер. 

 

Тормоза.

 

Вижу, что сайт тормозит, но причина тому не стили и скрипты. Скачайте opencart той же версии, что и Ваш скопируйте(с заменой) из скачанного файл system/library/response.php.

 

Модуль.

 

Для того, чтобы модуль нормально обработал стили необходимо в файле catalog/view/theme/название-вашей-темы/common/header.tpl найти все стили и привести их к следующему формату:

<link rel="stylesheet" href="Путь к файлу" media="screen" />

Сейчас у Вас стоит вот такой формат:

<link href="Путь к файлу" rel="stylesheet" media="screen" />

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо за ответ. Сделал как вы написали. Проверил еще раз и получил от гугла зеленый свет, но вот что касается загрузки с мобильных гаджетов, то гугл дал красный свет. Я так понял для мобильных устройств нужна отдельная оптимизация и ваш модуль для этого не предназначен?

 

 

Добрый вечер. 

 

Тормоза.

 

Вижу, что сайт тормозит, но причина тому не стили и скрипты. Скачайте opencart той же версии, что и Ваш скопируйте(с заменой) из скачанного файл system/library/response.php.

 

Модуль.

 

Для того, чтобы модуль нормально обработал стили необходимо в файле catalog/view/theme/название-вашей-темы/common/header.tpl найти все стили и привести их к следующему формату:

<link rel="stylesheet" href="Путь к файлу" media="screen" />

Сейчас у Вас стоит вот такой формат:

<link href="Путь к файлу" rel="stylesheet" media="screen" />

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Сделал тест на Яндексе. 5407мс это офигеть как много?

 

 

 

Код статуса HTTP: "200 OK"
Время ответа сервера: 5407мс
IP сайта: 212.192.194.11
Кодировка: UTF-8(unicode-1-1-utf-8, UTF8)
Размер страницы: 45.63Кб
Заголовки:
  • Server: nginx/1.2.0
  • Date: Fri, 27 Feb 2015 03:40:24 GMT
  • Content-Type: text/html; charset=utf-8
  • Transfer-Encoding: chunked
  • Connection: keep-alive
  • Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
  • Expires: Thu, 19 Nov 1981 08:52:00 GMT
  • X-Powered-By: PHP/5.3.13
  • Set-Cookie: PHPSESSID=55042e8e54f9bb5011813eda4548cd44; path=/; HttpOnly
  • Set-Cookie: language=ru; expires=Sun, 29-Mar-2015 03:40:21 GMT; path=/; domain=sanan-cctv.ru
  • Set-Cookie: currency=RUB; expires=Sun, 29-Mar-2015 03:40:21 GMT; path=/; domain=sanan-cctv.ru
  • Set-Cookie: language=ru; expires=Sun, 29-Mar-2015 03:40:21 GMT; path=/; domain=sanan-cctv.ru
  • Pragma: no-cache

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

Сделал тест на Яндексе. 5407мс это офигеть как много?

 

 

 

Код статуса HTTP: "200 OK"
Время ответа сервера: 5407мс
IP сайта: 212.192.194.11
Кодировка: UTF-8(unicode-1-1-utf-8, UTF8)
Размер страницы: 45.63Кб
Заголовки:
  • Server: nginx/1.2.0
  • Date: Fri, 27 Feb 2015 03:40:24 GMT
  • Content-Type: text/html; charset=utf-8
  • Transfer-Encoding: chunked
  • Connection: keep-alive
  • Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
  • Expires: Thu, 19 Nov 1981 08:52:00 GMT
  • X-Powered-By: PHP/5.3.13
  • Set-Cookie: PHPSESSID=55042e8e54f9bb5011813eda4548cd44; path=/; HttpOnly
  • Set-Cookie: language=ru; expires=Sun, 29-Mar-2015 03:40:21 GMT; path=/; domain=sanan-cctv.ru
  • Set-Cookie: currency=RUB; expires=Sun, 29-Mar-2015 03:40:21 GMT; path=/; domain=sanan-cctv.ru
  • Set-Cookie: language=ru; expires=Sun, 29-Mar-2015 03:40:21 GMT; path=/; domain=sanan-cctv.ru
  • Pragma: no-cache

 

 

При первичной загрузке создаются файлы сжатых и объединенных скриптов (от 5 до 10 секунд), которые используются на странице, при последующих загрузках будут использоваться уже созданные файлы. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Похожий контент

    • От halfhope
      550.00 руб · Срок продления: 300.00 руб за 6 месяцев
      Скачать/Купить дополнение


      MCJ - Автоматическое объединение и сжатие CSS, JS + smartoptimizer
      В стоимость модуля входят исходные файлы скрипта MCJ, xml файлы vqmod, файлы административной панели, инструкция по установке модуля. Все остальные компоненты распространяются по разным лицензиям и находятся в открытом доступе. Покупается одним клиентом на один сайт(магазин/мультимагазин). Есть урезанная бесплатная версия этого модуля, называется она MCLite.
      Возможности
      Автоматическая минимизация/объединение/сжатие
      Автоматическое сжатие только тех CSS/JS, которые используются на странице
      Оригинальные файлы остаются нетронутыми
      Имеется функция сжатия HTML (на лету, без кэширования)
      Выбор минимизатора для каждого типа контента (CSS/JS/HTML)
      Возможность отправлять already gzipped файлы (файлы заранее упакованы)
      Возможность использовать Domain CDN (зеркала сайта) для (CSS/JS/HTML) (опционально)
      Оптимизация Базы Данных одним кликом (как в PHPMyAdmin)
      Возможность исключить определенные файлы из обработки/объединения/минимизации
      Несколько режимов объединения файлов (в один файл/группой в папках/не объединять)
      Вставка base64 изображения в CSS (Храните мелкие картинки в CSS)
      Возможность перенести весь JavaScript код в конец страницы. (Статья)
      При использовании модифицированного smartoptimizer отправляются все необходимые для кэширования заголовки вне зависимости от сервера.
      Удобный менеджер кэша со статистикой сжатия

      Поддерживаемые минимизаторы
      CSS:
      [CSSMin] Joe Scylla
      [CSSMin Regex] Shashakhmetov Talgat
      [YUI CSS Compressor php port] Tubal Martin
      [CanCSSMini] andi
      [Crunch CSS] Shirley Kaiser

      HTML:
      [Minify HTML] Stephen Clay
      [htmlMin Regex] Shashakhmetov Talgat
      [*][Crunch HTML] Shirley Kaiser
      [/list]
      JavaScript: [JsMinPlus] Tino Zijdel <crisp@tweakers.net> [Google Clousure Compiler (Curl)] Google Developers [JShrink] Robert Hafner <tedivm@tedivm.com> [JavaScriptPacker] Dean Edwards <dean.edwards@gmail.com>
      Результаты качества сжатия минимизаторов можете посмотреть здесь http://halfhope.ru/tmp/mcj_tests/. Провести тесты работоспособности всех минимизаторов на своем сервере можно с помощью server_compatibility_test.zip.

      Поддерживаемые CMS OpenCart версий: 1.5.x.x
      Демо http://mcj.halfhope.ru/ - Каталог http://mcj.halfhope.ru/admin - Панель администрарования (логин, пароль уже введены)
      Системные требования
      Для тестирования совместимости с Вашим сервером скачайте и распакуйте архив server_compatibility_test.zip. Он проведет тестирование минимизаторов mcj с Вашим сервером и покажет, какие модули (библиотеки сжатия) будут работать, а какие нет. PHP >= 5.0. Не страшно, если не работает один из минимизаторов, для этого добавлены другие.

      Установка/обновление
      Добавил halfhope Добавлено 26.08.2013 Категория Кэширование, сжатие, ускорение  
    • От halfhope
      Как работает MCLite
      Работает он по тому же принципу, что и MCJ. Т.е. перед тем как послать страницу клиенту он сканирует ее код, находя в нем все CSS файлы, и обрабатывает их в соответствии с настройками, а настроек этих целая куча (как и библиотек для минимизации). После обработки он сохраняет новые (сжатые) CSS файлы во временную папку. Затем подменяет ссылки на минимизированные CSS файлы в коде страницы. Таким образом оригинальные CSS файлы остаются нетронутыми. После этого отправкой файлов стилей для страницы занимается сервер, а не PHP. Сжимаются и передаются только те стили, которые используются на посещаемой странице.
      Возможности MCLite
      Наличие нескольких библиотек для минимизации CSS
      Возможность вставлять в файлы стилей изображения в кодировке base64, вне зависимости от выбранного минимизатора (преимущества)
      Упаковка файлов стилей алгоритмом gzip во время создания файла. Т.е. не будет тратится время на сжатие "на лету"
      Возможность использовать Domain CDN для отдачи CSS и изображений
      Имеется функция оптимизации базы данных
      Несколько режимов объединения файлов
      Возможность исключить определенные файлы из обработки/объединения/минимизации
      Имеется функция сжатия HTML (на лету, без кэширования)
      Наличие нескольких библиотек для сжатия HTML
      Минимум файлов
      Удобный менеджер кэша со статистикой сжатия
      Наличие деинсталлятора (удаляет вместе с файлами и записями модуля)

      Поддерживаемые минимизаторы
      CSS:
      [CSSMin] Joe Scylla
      [CSSMin Regex] Shashakhmetov Talgat
      [YUI CSS Compressor php port] Tubal Martin
      [CanCSSMini] andi
      [Crunch CSS] Shirley Kaiser

      HTML:
      [*][Minify HTML] Stephen Clay
      [*]
      [htmlMin Regex] Shashakhmetov Talgat
      [*][Crunch HTML] Shirley Kaiser
      [/list]
      Minify HTML рекомендую использовать только с кэшированием HTML на стороне сервера, код сжимает хорошо, но медленный. Сводную таблицу сжатия можно посмотреть здесь.


      Поддерживаемые версии Все версии, начиная от 1.5.1 до 1.5.6.4 включительно.
      Инструкция по установке/обновлению

    • От halfhope
      В стоимость модуля входят исходные файлы скрипта MCJ, xml файлы vqmod, файлы административной панели, инструкция по установке модуля. Все остальные компоненты распространяются по разным лицензиям и находятся в открытом доступе. Покупается одним клиентом на один сайт(магазин/мультимагазин). Есть урезанная бесплатная версия этого модуля, называется она MCLite.
      Возможности
      Автоматическая минимизация/объединение/сжатие
      Автоматическое сжатие только тех CSS/JS, которые используются на странице
      Оригинальные файлы остаются нетронутыми
      Имеется функция сжатия HTML (на лету, без кэширования)
      Выбор минимизатора для каждого типа контента (CSS/JS/HTML)
      Возможность отправлять already gzipped файлы (файлы заранее упакованы)
      Возможность использовать Domain CDN (зеркала сайта) для (CSS/JS/HTML) (опционально)
      Оптимизация Базы Данных одним кликом (как в PHPMyAdmin)
      Возможность исключить определенные файлы из обработки/объединения/минимизации
      Несколько режимов объединения файлов (в один файл/группой в папках/не объединять)
      Вставка base64 изображения в CSS (Храните мелкие картинки в CSS)
      Возможность перенести весь JavaScript код в конец страницы. (Статья)
      При использовании модифицированного smartoptimizer отправляются все необходимые для кэширования заголовки вне зависимости от сервера.
      Удобный менеджер кэша со статистикой сжатия

      Поддерживаемые минимизаторы
      CSS:
      [CSSMin] Joe Scylla
      [CSSMin Regex] Shashakhmetov Talgat
      [YUI CSS Compressor php port] Tubal Martin
      [CanCSSMini] andi
      [Crunch CSS] Shirley Kaiser

      HTML:
      [Minify HTML] Stephen Clay
      [htmlMin Regex] Shashakhmetov Talgat
      [*][Crunch HTML] Shirley Kaiser
      [/list]
      JavaScript: [JsMinPlus] Tino Zijdel <crisp@tweakers.net> [Google Clousure Compiler (Curl)] Google Developers [JShrink] Robert Hafner <tedivm@tedivm.com> [JavaScriptPacker] Dean Edwards <dean.edwards@gmail.com>
      Результаты качества сжатия минимизаторов можете посмотреть здесь http://halfhope.ru/tmp/mcj_tests/. Провести тесты работоспособности всех минимизаторов на своем сервере можно с помощью server_compatibility_test.zip.

      Поддерживаемые CMS OpenCart версий: 1.5.x.x
      Демо http://mcj.halfhope.ru/ - Каталог http://mcj.halfhope.ru/admin - Панель администрарования (логин, пароль уже введены)
      Системные требования
      Для тестирования совместимости с Вашим сервером скачайте и распакуйте архив server_compatibility_test.zip. Он проведет тестирование минимизаторов mcj с Вашим сервером и покажет, какие модули (библиотеки сжатия) будут работать, а какие нет. PHP >= 5.0. Не страшно, если не работает один из минимизаторов, для этого добавлены другие.

      Установка/обновление
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.