JavaScript и CSS компрессор на PHP.
PHP, Download Ноябрь 17th, 2007
Идея, как оказалось, не нова, но придумал я ее независимо от кого-либо. Бесплатный php скрипт, который будет экономить время загрузки страниц Вашего сайта. Для примера сжимался мой любимый mootools фреймворк со всеми комментариями в полном комплекте. Размер исходника 180Кб, а сжатого файла 49Кб. Скрипт никак не портит содержимое файла, не имеет никаких требований к оформлению кода, не использует eval() для javascript.Скачать бесплатный скрипт.
Для установки скрипта, скопируйте файл jscss.php в папку, где
Вы формируете дружелюбные URL-ы в файле .htaccess. Вы же формируете?
Еще нужно добавить в этот файл 3 строки из прилагаемого в архиве файла
.htaccess:
# JSCSS-Packer.
RewriteRule (\.js)$ jscss.php [L]
RewriteRule (\.css)$ jscss.php [L]
Для того, чтобы проверить работу скрипта, можно воспользоваться браузером FireFox для которого должен быть установлен замечательный плагин Firebug. После установки внизу будет зеленый кружочек. Надеюсь, что зеленый, а не красный. Кликнув по нему идем на вкладку «Net», в адресной строке вводим адрес сайта, где Вы установили мой скрипт, и смотрим, что размеры загружаемых скриптов и css файлов явно меньше, чем действительные оригиналы.
Если только размеры Ваших css и js файлов с округлением до килобайт измеряется числами меньше единицы, то скрипт использовать нет смысла, так как «сжималка», дописав своих структур в сжатый файл, только увеличит размер оригинального файла.
Спасибо, что используете мои скрипты! Как видите, работаю на Вас и бесплатно :)
About
Что то скрипт не пашет.Пытался его к ZF присобачить сделал все как по инструкции но в папке jscss нечего не появляется.
Пробовал еще раз подкинуть вашь скрипт не заработало. Может надо еще, что то подключать?
Проверьте значение переменной $bGzip, до того, как идет ее проверка в строке 77. Если она false, то у Вас либо браузер не принимает gzip, либо по умолчанию все файлы с сервера уходят в сжатом виде, либо нет библиотеки для работы с gzip (проверяется в строках 64 и 68).
Проверьте права на папку, в которую должен сохранятся кеш, должно быть 777. Вроде это все требования скрипта, но они обычно выполняются у большинства хостеров.
Спасибо вам огромное!
Гениально!
А как бы это да до nginx?
Под Apache – прекрасно, а вот под nginx – как там конфиг прописать не пойму.
rewrite?
location?
Буду рад, если просвятите.
С уважением, babr
babr, пока с nginx я не работал (мне почти не стыдно:))
Когда узнаю, как ответить на вопрос, то сразу будет небольшое обновление скрипта. А пока нет ответа, сорри
это немного сделает меньше htaccess
RewriteEngine On
RewriteRule (\.js|\.css)$ /jscss.php [L]
скрипт работает на разных машинах по разному то он грузит компрессию то нет но все ровно сжимает. сервер один и тотже просто запускаю. на разных машинах его. (он у меня переносной).
скрипт может не выдать сжатый результат если у клиента установлен Outpost. Иза того что Outpost удаляет заголовок gzip…
Спасибо, интересно было посмотреть. Было бы более правильно если бы mod_rewrite дергал php только когда в кеше нет нужного пожатого файла.
так это происходит мгновено.
и что тебе мешает переписать скрипт под себя.