Плагин JCH Optimize

zavrus

Гуру форума
Регистрация
29 Май 2009
Сообщения
176
Реакции
81
Description
JCH Optimize is a Joomla! system plugin that can optimize web page downloads by aggregating and minifying css and javascript files found in the head section of the web page. By combining these files together as one you minimize the total amount of http connections that has to be made in downloading a webpage and utlimately reduce the total download time. The download is further optimized and speedened by an option to minify the aggregated css or javascript file or even the html output. For a more detailed description on the inner workings of the plugin, read the section on how the plugin works.

Features
  • Combine javascript/css files into one
  • Combine background images
  • Minify aggregated files
  • Gzip combined javascript or css file
  • Exclude certain files from the aggregating process if these cause problems
  • Exclude one or more components if plugin doesn't work well with them
  • Can produce an aesthetic 'flat link' url for aggregated file with the use of htaccess
Installation
Installation is like any other Joomla! extension. Just download the zip file and use the Joomla installer to install. From the administrator panel, choose Extensions -> Install/Uninstall and then using the upload package option just click choose file to find the location of the downloaded zip file to upload and install.
[/spoil]


[spoil]Про версия
 
Пришлось отказаться от использования этого плагина, уж очень сильно выросла нагрузка, местами в 3 - 4 раза выше чем без него, если так дело пойдет дальше, то хостер заставит переходить на другой тариф, а это будет очень дорого и не стоит того.
Для сайтов с посещаемостью до 1000 или 2000 человек плагин очень нужный, реально ускоряет и сжимает скрипты и тд., короче все делает правильно.
 
Нашел косячок. На денвере заработал без проблем, на реальном пришлось править htaccess
в файле /media/plg_jchoptimize/assets/.htaccess находим строку
RewriteRule ^(.*?)(gz|nz)/([^/]+)/([^/]+)/([^/]+)\.(js|css)$ /$1media/plg_jchoptimize/assets/jscss.php?f=$5&type=$6&gz=$2&d=$3&i=$4
меняем на
RewriteRule ^(.*?)(gz|nz)/([^/]+)/([^/]+)/([^/]+)\.(js|css)$ /$1jscss.php?f=$5&type=$6&gz=$2&d=$3&i=$4

Для тех кто на nginx
location ~* \.(css|js)$ {
rewrite ^/(.*?)(gz|nz)/([^/]+)/([^/]+)/([^/]+)\.(js|css)$ /media/plg_jchoptimize/assets/jscss.php?f=$5&type=$6&gz=$2&d=$3&i=$4 last;
}
Добрый день, тоже столкнулся с проблемой, что плагин на денвере под apache работает на ура, а на nginx на хостинге режет скрипты((( Добавлял строку из цитаты выше в htaccess - не помогает. Подскажите куда копать?
 
Код:
rewrite ^(.*?)/media/plg_jchoptimize/assets.*?/(gz|nz)/([^/]+)/([^/]+)/([^/]+)\.(js|css)$ $1/media/plg_jchoptimize/assets/jscss.php?f=$5&type=$6&gz=$2&d=$3&i=$4;
Для Nginx у меня так. Взято с сайта разраба.
Апача уже нету.
 
Код:
rewrite ^(.*?)/media/plg_jchoptimize/assets.*?/(gz|nz)/([^/]+)/([^/]+)/([^/]+)\.(js|css)$ $1/media/plg_jchoptimize/assets/jscss.php?f=$5&type=$6&gz=$2&d=$3&i=$4;
Для Nginx у меня так. Взято с сайта разраба.
Апача уже нету.

Тоже не работает(((( Уже поставил на локалку openserver с nginx, включил mod_rewrite в настройках хоста nginx - ЧПУ заработали, но JCH Optimize - не хочет скрипты и стили выносить в отдельный файл(на хостинге выносит, но не корректно) - вот что пишет при попытке открыть файл css созданный плагином:

Код:
Fatal error: Uncaught exception 'RuntimeException' with message 'Unknown column 'header' in 'field list' SQL=SELECT `new_url`,`header`,`published` FROM `j25_redirect_links` WHERE `old_url` = 'http://SITE.ru/media/plg_jchoptimize/assets/gz/1/0/1f32391c2e989193ecef5b815cb36c61.css' LIMIT 0, 1' in D:\OpenServer\domains\SITE.ru\libraries\joomla\database\driver\mysqli.php:610 Stack trace: #0 D:\OpenServer\domains\SITE.ru\libraries\joomla\database\driver.php(1279): JDatabaseDriverMysqli->execute() #1 D:\OpenServer\domains\SITE.ru\plugins\system\redirect\redirect.php(86): JDatabaseDriver->loadObject() #2 [internal function]: PlgSystemRedirect::handleError(Object(Exception)) #3 {main} thrown in D:\OpenServer\domains\SITE.ru\libraries\joomla\database\driver\mysqli.php on line 610
 
Последнее редактирование:
Что-то явно не то ! Если нгинкс + пхп-фпм то htaccess не работает. Если апач стоит то только в htaccess прописать надо реврайт. Ещё возможно нгинкс отдаёт эти файлы как статику, ещё до реврайта.
 
Wertos, спасибо!
на локалке, в настройках плагина во вкладке- "дополнительные параметры" отключил Использование URL Rewrite (поставил "нет") - плагин заработал, ну соответственно для css и js он создаёт не красивые ссылки, типа "plg_jchoptimize/assets/gz/1/0/1f32391c2e989193ecef5b815cb36c61.css", а вот такие "plg_jchoptimize/assets2/jscss.php?f=040b0eac7e66032b3a72c4d377e3491f&type=css&gz=gz&d=1&i=0" - для меня это не принципиально, так что устраивает.

Не устраивает что под apache он прекрасно обрабатывает скрипты и упаковывает их в отдельные файлы, а под nginx (хоть на хостинге, хоть на локалке) режет скрипты в теле страницы типа:

<script language="JavaScript" type="text/javascript">
labels[0] = {id: 1, left: 1, top: 1, width: 20, height: 20, label: '1', alt: 'Бла-бла-бла'};
</script>

и частично счётчики посещаемости....
Не может же плагин работать по разным алгоритмам, видимо косяк где-то в настройках, подскажите в какую сторону нужно копать? Заранее благодарен)
 
Плагин всегда отдаёт ссылки только так
Код:
plg_jchoptimize/assets2/jscss.php?f=040b0eac7e66032b3a72c4d377e3491f&type=css&gz=gz&d=1&i=0
Для красивых урл реврайт и нужен. Я по этому поводу копнул бы всетаки нгинкс !
В настройках есть разные уровни оптимизации, вот их надо попробовать. У меня тоже стояло не самое сильное сжатие, что-то среднее. Тоже были проблемы со скриптами партнёрок, счётчиков.
 
сделал так: Часть скрипта(отдельный js файл), который слетал - добавил в исключения, счётчики - скопировал из рабочей версии jch optimize на apache - (noscript версии - вставил сразу в index.php шаблона, script-овые части которые объединяет он в один файл - вынес в counter.js и также занёс в исключения)
Вроде бы всё ОК, счётчики работают на 100% страниц, но скрипт из-за которого началась возня то работает, то не работает:mad::mad::mad::mad:
А именно: заходишь на страницу в 50% процентах работает, нажимаю F5 - даже если не работал - начинает работать (по всей видимости кеширует на сервере css и js при обращении к странице)
и всё бы ничего, но если я перехожу в адресную строку и давлю enter на уже прокешированой странице - скрипт опять слетает, пока не нажмёшь F5!!!! Что за фигня такая?((

Решил вопрос включением функции "Ленивая загрузка" изображений - (задержка загрузки изображений до тех пор, пока они не появятся в отображаемой на экране части страницы в результате скроллинга.) во вкладке PRO. Сразу всё заработало)
 
Последнее редактирование модератором:
Назад
Сверху