сжатие целых веб-страниц (HTML и JS) - PullRequest
0 голосов
/ 06 сентября 2011

Я нашел несколько инструментов , таких как этот , которые позволяют мне создавать «самораспаковывающийся» javascript для кода javascript на веб-странице, который использует различные методы для минимизации размера передачи.

У меня есть веб-страница , в которой есть довольно большой кусок кода JavaScript. Но так как я еще не успел оптимизировать размер файла, я подумал о том, чтобы сделать то же самое с HTML-битами моего сайта. На моей странице блога PHP-скрипт извлекает фрагменты HTML-кода из большого количества текстовых файлов и объединяет их в один гигантский файл HTML, который отправляется. Chrome говорит мне, что сжатие его с помощью gzip уменьшит размер файла на две трети.

Однако я отключил сжатие gzip, потому что, если вы скачали какой-либо из моих zip-архивов, которые я размещал через Internet Explorer, Herp derp пренебрегал бы их распаковкой, чтобы файл, загруженный IE, всегда был поврежден. Думаю, я смогу снова включить gzip, если исправлю эту маленькую проблему, но пока я хотел бы попытаться выяснить, могу ли я создать самораспаковывающуюся HTML-страницу. Можно ли сделать так, чтобы javascript извлекал гигантскую строку HTML и добавлял весь кусок как дочерний элемент тела? Будет ли это работать?

Ответы [ 2 ]

2 голосов
/ 06 сентября 2011

Это будет медленнее и очень подвержено ошибкам. Любая ошибка Javascript приведет к тому, что вся страница не будет отображаться, и ваш SEO будет полностью уничтожен. Придерживайтесь регулярно отображаемого HTML: поскольку браузер загружает / анализирует HTML, он начнет извлекать другие ресурсы (изображения, сценарии, CSS) и отображать макет. Не зацикливайтесь на строго наименьшем размере загрузки, а на самом быстром общем опыте.

Активно используйте свободно доступные CDN. Есть две большие: Google и Microsoft, которые размещают различные сценарии, такие как jQuery и Modernizr. Придерживайтесь Google, где это возможно, они, кажется, имеют более высокое признание, чем Microsoft, и, следовательно, имеют более высокий шанс «кеша». Кроме того, используйте CDNJS для других общедоступных библиотек - их много.

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

Использование упаковщиков Javascript сделает ваш сайт медленнее за счет экономии еще нескольких байт передачи на вашем конце. Мало того, что скрипт должен запускаться, но теперь вы просите браузер пользователя выполнить дополнительный (потенциально большой) дополнительный шаг, прежде чем ваши скрипты смогут работать.

Если вы пытаетесь загрузить отдельные файлы (с помощью диалогового окна «Сохранить как»), вы не можете использовать gzip с типом содержимого «application / zip». Фактический формат Zip доступен в PHP, используйте эти библиотеки.

0 голосов
/ 06 сентября 2011

В качестве быстрого выигрыша Cloudflare имеет функцию автоматической минимизации для HTML, JS и CSS.Мы использовали его некоторое время с хорошими результатами.Определенно стоит посмотреть.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...