Како функционише компримовани ХТМЛ и зашто вам може затребати

Како функционише компримовани ХТМЛ и зашто вам може затребати

Ако водите веб страницу, требали бисте већ знати како користите одговарајуће формате слика и оптимизујете своје слике за веб. Ипак, иако је компресија слике добро позната пракса, ХТМЛ компресија се често занемарује, што је штета јер се предности исплате.





У овом чланку ћемо размотрити два главна метода за смањење ХТМЛ датотека, зашто ХТМЛ датотеке треба смањити и како то учинити.





Компресија насупрот минификацији

Што се тиче оптимизације ХТМЛ датотека, постоје две главне методе за то: компресија и минификација . Звуче слично на површини, али заправо су две различите технике, па их немојте збунити.





Минификација

Смањивање можете сматрати уклањањем непотребних знакова и редова у изворном коду. Замислите увлачење, коментаре, празне редове итд. Ништа од овога није потребно у ХТМЛ -у - постоје да би се датотека лакше читала. Скраћивање ових детаља може смањити величину датотеке без икаквог утицаја.

Пример ХТМЛ странице:





Your Title Here



Send me mail at support@yourcompany.com .

This is a new paragraph!

This is a new paragraph in bold and italics.

Оригинална величина: 354. Умањена величина: 272. Уштеда: 82 (23,16%).

Многи веб програмери и власници веб локација резервишу умањење само за ЈС и ЦСС датотеке, али ова застарела пракса је грешка. Умањивање ХТМЛ -а је такође важно.





2000 -их, алати за минификацију били су ретки. Морали сте ручно да умањујете датотеке сваки пут када се нешто промени. Будући да се ХТМЛ датотеке чешће мењају од ЈС и ЦСС датотека, тада је једноставно било превише досадно да се сваки пут минимизира. Данас је то спорно питање.

Компресија

Када корисници посете вашу веб локацију, то раде помоћу ХТТП протокола. Прегледник шаље захтев вашем веб серверу за одређену страницу, ваш веб сервер проналази страницу, а затим шаље садржај те странице назад у прегледач посетиоца.





Али пошто ХТТП протокол подржава компресију, ваш веб сервер може да компримује страницу пре него што је пошаље посетиоцу (под претпоставком да је компресија омогућена у поставкама вашег сервера), а затим прегледач посетиоца може да декомпримира страницу назад у првобитно стање.

Најчешћа шема компресије је ГЗИП , који је формат датотеке који користи алгоритам компресије без губитака под називом ДЕФЛАТЕ.

Алгоритам тражи понављање појављивања текста у ХТМЛ датотеци, а затим их замењује референцама на претходну појаву. Свака референца је једноставно два броја: колико је референца назад и колико знакова позивамо.

Размислите о низу текста попут овог (пример преузет са веб локације ГЗИП):

Blah blah blah blah blah.

Алгоритам препознаје следеће понављање:

B{lah b}{lah b}{lah b}{lah b}lah.

Прва појава је наша референца, па оставите тако:

Blah b{lah b}{lah b}{lah b}lah.

Друга појава се односи на прву појаву, која је иза пет знакова и дуга пет знакова:

Blah b[5,5]{lah b}{lah b}lah.

Али у овом случају алгоритам препознаје да је следећа појава исти низ знакова, па продужава референтну дужину за још пет:

Blah b[5,10]{lah b}lah.

И поново:

Blah b[5,15]lah.

Алгоритам је довољно паметан да схвати да су следећа три знака прва три знака у референци, па се продужава за три:

Blah b[5,18].

Сада размислите о типичној ХТМЛ датотеци и колико понављања постоји у њој. Скоро свака ознака, као нпр

, има одговарајућу завршну ознаку, попут

. Штавише, многе ознаке се понављају, као нпр

,

,

,

  • итд. Атрибути се такође често понављају, укључујући

    class

    ,

    href

    , и

    src

    . Лако је схватити зашто је ГЗИП компресија толико ефикасна са ХТМЛ -ом.

    Једина мана је што веб серверу треба мало више ЦПУ -а за извршавање компресије сваки пут када се затражи страница. Али пошто ЦПУ у данашње време не представља велику бригу, готово је увек боље омогућити ГЗИП него без њега, чак и ако имате почетни веб хостинг.

    Зашто бисте требали компримирати и умањити

    Постоје две главне предности, а обе су кључне у данашњем окружењу са великим мобилним уређајима.

    Брже учитавање страница

    У просеку, ХТМЛ минификатор може смањити величину датотеке за око 3 процента са основним поставкама. Уз опционална напредна подешавања, ХТМЛ датотека може се смањити за још 3 до 7 процената, за потенцијално смањење до 10 процената. Ово се директно преводи у брже време учитавања странице.

    Користи се мања пропусност

    Рецимо да имате 10 датотека, од којих је свака умањена са 50 КБ на 45 КБ за укупно смањење од 50 КБ. Рецимо да ваша веб страница свакодневно посећује у просеку 1.000 посетилаца, при чему свака посета има у просеку десет страница. Само умањење ХТМЛ -а смањује вашу пропусност за 50 МБ дневно (1,5 ГБ месечно).

    Компресија + минификација

    Као што видите, умањивање ХТМЛ -а је само по себи корисно, посебно како ваша веб локација расте, датотеке постају све веће и промет се повећава. Напоменути да Гоогле -ове смернице за брзину странице препоручите умањивање ХТМЛ -а, па ако сте скептични, нека вас то убеди у супротно.

    зашто се мој ПС4 контролер стално искључује

    Али оно што је сјајно у вези са оптимизацијом ХТМЛ -а је то што не морате бирати ни умањивање ни компресију. Можете учинити обоје! У ствари, ти требало би уради обоје.

    У просјеку можете очекивати да ће ГЗИП компресија смањити ХТМЛ датотеку за 70 до 90 посто. Користећи горњи пример са конзервативном проценом компресије, минимизиране ХТМЛ датотеке би ишле са 45 КБ на 13,5 КБ свака, за укупно смањење од 365 КБ. У поређењу са неоштећеним/некомпримованим, пропусност ваше веб локације сада је смањена за 365 МБ дневно (11 ГБ месечно).

    Поред уштеде пропусног опсега, свака страница учитава се драматично брже јер прегледач крајњег корисника треба да преузме само 13,5 КБ наспрам 50 КБ по страници.

    Како компримовати и умањити ХТМЛ

    Срећом, ни једно ни друго није тешко у данашње време и не треба вам много техничког знања да бисте их поставили.

    Додаци за ВордПресс

    Ако покрећете ВордПресс веб локацију, све што треба да урадите је да инсталирате један додатак и можете искористити предности компресије и минификације.

    Већина додатака за кеширање ради више од простог кеширања страница. На пример, ВП најбржи кеш и В3 Тотал Цацхе оба имају подешавања једним кликом која вам омогућавају да укључите умањење ХТМЛ-а и компримовање ГЗИП-а, између осталих функција које додатно убрзавају учитавање страница и смањују потрошњу пропусног опсега.

    ако ти само желите минификацију, препоручујемо Умањи ХТМЛ повезати. Једноставно је, подржава ХТМЛ/ЦСС/ЈС и омогућава вам да мало прилагодите метод минификације (нпр. Да ли желите да уклоните

    http:

    и

    https:

    са УРЛ адреса).

    Статички ХТМЛ минификатори

    Ако су ваше ХТМЛ датотеке статичке (тј. Нису динамички генерисане помоћу ЦМС -а или веб оквира), тада можете да одржавате два скупа ХТМЛ датотека: скуп „извора“, који је минимизиран ради лакшег уређивања, и „умањени“ скуп, коју креирате сваки пут када промените изворну датотеку.

    Да бисте умањили, користите један од ових алата:

    Ово је одржива техника ако сте се удаљили од ЦМС -ова попут ВордПресс -а и сада користите генераторе статичких веб локација.

    Омогући компримовање ГЗИП -а

    Кораци за омогућавање компримовања ГЗИП -а могу се разликовати у зависности од софтвера веб сервера који користите. Пошто је Апацхе најпопуларнија опција, размотрићемо како да га омогућимо помоћу .хтаццесс -а.

    Повежите се на веб сервер помоћу ФТП -а, а затим креирајте датотеку под називом

    .htaccess

    у основном директоријуму. Уредите .хтаццесс датотеку тако да има следеће поставке:


    mod_gzip_on Yes
    mod_gzip_dechunk Yes
    mod_gzip_item_include file .(html?|txt|css|js|php|pl)$
    mod_gzip_item_include handler ^cgi-script$
    mod_gzip_item_include mime ^text/.*
    mod_gzip_item_include mime ^application/x-javascript.*
    mod_gzip_item_exclude mime ^image/.*
    mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*


    SetOutputFilter DEFLATE

    Нисте сигурни ради ли компресија на вашој веб локацији? Тестирајте га помоћу овог алата .

    За крајњу ефикасност, такође бисте требали научите како да проверите, очистите и оптимизујете свој ЦСС .

    Објави Објави Твеет Емаил Требате ли одмах надоградити на Виндовс 11?

    Виндовс 11 ускоро долази, али да ли треба да ажурирате што је пре могуће или да сачекате неколико недеља? Хајде да сазнамо.

    Прочитајте следеће
    Повезане теме
    • Програмирање
    • ХТМЛ
    • Веб Девелопмент
    О аутору Јоел Лее(Објављено 1524 чланака)

    Јоел Лее је главни уредник МакеУсеОф -а од 2018. године. у области рачунарства и преко девет година професионалног искуства у писању и уређивању.

    Више од Јоела Лееја

    Претплатите се на наш билтен

    Придружите се нашем билтену за техничке савете, критике, бесплатне е -књиге и ексклузивне понуде!

    Кликните овде да бисте се претплатили