Gzip siqish js / css / html saytini tezlashtirish - .htaccess da qanday yoqish mumkin

chop etish · Vremya na chtenie: 9min · tomonidan · Chop etilgan · Yangilangan

ko'paytirishMaqolani tinglang

Gzip siqish js css html.Assalomu alaykum, aziz o'quvchilar! Bugun biz bu haqda gaplashamiz gzip js siqish | css | htmlsaytni yuklashni tezlashtirish uchun. .htaccess fayli bilan uni qanday yoqish mumkin. Shuningdek, men sizga nima uchun server tomonida faylni siqishni umuman yoqishingiz kerakligini aytaman.

Ushbu mavzu bevosita texnik bilan bog'liq saytni optimallashtirish. Juda oddiy manipulyatsiyalarga ruxsat berib, sezilarli darajada veb-sayt yuklanishini tezlashtirish. Tez sayt qidiruv tizimini reklama qilishda muhim muvaffaqiyatdir.

.htaccess da Gzip faylini siqishni yoqishdan maqsad nima?

Saytdagi sahifalarni Gzip siqishini qanday yoqish mumkin.

Ko'p maqolalarimda aytganimdek! Dastlabki bosqichda sayt juda katta vaznga ega. Va ular. uchun optimallashtirish zarur saytimizning og'irligini kamaytiring. Har holda, biz kod miqdorini, sahifalarning og'irligini, rasmlarini va boshqa narsalarni kamaytirishimiz kerak. Umumiy vazifa foydalanuvchiga saytning engil va tez yuklanadigan versiyasini berishdir.
Shunday qilib, biz tezda ma'lumot beramiz. Sahifalar va bo'limlar o'rtasidagi o'tish soniyaning bir qismida sodir bo'ladi. Shu bilan birga, tashrif buyuruvchilar barcha yuklangan dizayn elementlarini va o'zaro ta'sirning boshqa interaktiv elementlarini tezda ko'rishadi.

GZIP siqish - uzatilgan fayllarni uzluksiz arxivlashni ta'minlaydi. Shunday qilib, biz manba sifatini yo'qotishsiz siqishni olamiz. Barcha ma'lumotlar foydalanuvchi brauzerida allaqachon ochilgandan so'ng asl holatiga keladi. Amalga oshirishning o'zi bir nechta ish algoritmlari bilan bog'liq. Bularga LZ77 va Huffman yordamida asosiy DEFLATE kiradi.

Albatta, bunday siqish (siqish) ideal yechim emas. Ammo Gzip-ning amalga oshirilishi bizni tezlik va siqish nisbati o'rtasidagi muvozanatga olib keladi. Bu usul saytni tezlashtirishning boshqa usullari orasida eng mashhur hisoblanadi. Bundan tashqari, serverda globalroq usulni amalga oshirish ko'p vaqt va sinovlarni talab qiladi. Va bu kerakli natijani bermasligi mumkin! Bu borada Gzip siqish faylni yuklab olishni tezlashtirishning eng ishonchli usuli hisoblanadi.

Gzip siqish - qaysi fayllar uchun qabul qilinadi? U qaysi serverlarda ishlaydi?

Aslida gzip siqish fayllarning katta ro'yxatini qamrab oladi. Ammo uning kichik kamchiliklari bor! Foydalanuvchi saytga tashrif buyurganida, server tezda katta hajmdagi ma'lumotlarni siqishi kerak. Bu serverda ma'lum bir yuklanishga olib keladi. Ammo ko'p hollarda bu muhim emas. O'tkazilgandan so'ng barcha qo'llab-quvvatlanadigan fayl formatlari mashhur brauzerlarda mukammal tarzda namoyish etiladi.

Asosiylariga quyidagilar kiradi:

  • matn/ochiq matn/html;
  • matn/xml ilovasi/xml ilovasi/xhtml+xml ilovasi/xml-dtd;
  • ilova/rdf+xml ilovasi/rss+xml ilovasi/atom+xml tasvir/svg+xml;
  • matn/css matn/javascript ilovasi/javascript ilovasi/x-javascript;
  • shrift/opentype ilovasi/font-otf ilovasi/x-font-otf;
  • shrift/truetype ilovasi/font-ttf ilovasi/x-font-ttf.
Gzip faylini siqish asosiy Apache va Nginx serverlarida qo'llaniladi. Yaroqli ish modullari va server imkoniyatlari bilan.

Masalan: Nginx - statik uchun ishlatiladi. Statik fayllarni yaxshi siqadi va qayta ishlaydi. Siqish ngx_http_gzip_module va ngx_http_gzip_static_module modullari tufayli sodir bo'ladi. Uzluksiz siqish asosiy kengaytmani ".gz" bilan almashtirish bilan amalga oshiriladi.

Standart konfiguratsiyaga misol:

gzip yoqilgan;
gzip_min_length 1000;
gzip_types matn/oddiy dastur/xml;

Apache eng ko'p so'raladigan serverdir. Albatta, undagi siqish yanada ambitsiyali va moslashtirilgan bo'ladi. Ushbu serverda Gzip siqish mod_deflate moduli yordamida amalga oshiriladi. Foydalanuvchining brauzeriga yuborishdan oldin tezda siqishni ta'minlash orqali.

Standart konfiguratsiyaga misol:

# Enable GZIP - siqishni yoqish
AddOutputFilterByType DEFLATE matn/tekis
AddOutputFilterByType DEFLATE matn/html
AddOutputFilterByType DEFLATE matn/xml
AddOutputFilterByType DEFLATE matn/css
AddOutputFilterByType DEFLATE ilovasi/xml
AddOutputFilterByType DEFLATE ilovasi/xhtml+xml
AddOutputFilterByType DEFLATE ilovasi/rss+xml
AddOutputFilterByType DEFLATE ilovasi/javascript
AddOutputFilterByType DEFLATE ilovasi/x-javascript

# Serverdagi yukni kamaytirish uchun sekin algoritm bilan siqish.

RewriteEngine On
AddEncoding gzip .gz
RewriteCond %{HTTP:Qabul qilish-kodlash} gzip
RewriteCond %{REQUEST_FILENAME}.gz -f
Qayta yozish qoidasi ^(.*)$ $1.gz [QSA,L]

PHP kamroq mashhur variant. Ammo zlib moduli yordamida siqishni tashkil qilish imkoniyati ham mavjud. Bu usul tavsiya etilmaydi, chunki u juda sekin.

Standart konfiguratsiyaga misol:

1TP29OriginalFile = __DIR__ . '/jquery-1.11.0.min.js';
$gzipFile = __DIR__ . '/jquery-1.11.0.min.js.gz';

1TP29OriginalData = file_get_contents(1TP29OriginalFile);

$gzipData = gzencode($originalData, 9);
file_put_contents($gzipFile, $gzipData);

var_dump (fayl o'lchami ($originalFile)); // int (96380)
var_dump (fayl o'lchami ($gzipFile)); // int (33305)

Albatta, Apache + Nginx + PHP serverlaridan birgalikda foydalanish ham mumkin. Shunday qilib, serverlar o'rtasida ma'lum bir yuk taqsimoti ta'minlanadi. Ammo bu oddiy foydalanuvchilar tomonidan bajarilmasligi kerak bo'lgan juda qiyin ish.

Men Apache/Nginx/PHP ning barcha asosiy afzalliklaridan foydalangan holda serverimni o'zim sozladim. Shunday qilib, Nginx statikni boshqaradi, Apache qolganlarini PHP bilan boshqaradi. Natija juda ijobiy. Ammo bu usulni tashkil qilish uchun ko'p vaqt sarflandi.

.htaccess faylida Gzip siqishni qanday yoqish mumkin

Aslida, buni qilish qiyin emas. Bundan tashqari, men allaqachon ushbu fayl haqida gapirganman.

Asosiy qoidalar bir xil bo'lib qoladi:

  1. Tahrirlashdan oldin asl .htaccess faylini saqlang. Xato 500 bo'lsa, qayta tiklash uchun biror narsa bo'ladi.
  2. Chiziqlar orasidagi bo'shliqlar bo'lmasligi kerak.
  3. Biz barcha sharhlarni # belgisidan keyin yozamiz.
  4. Kiritgandan keyin kodning yaxlitligini tekshirishni unutmang.

Standart .htaccess qoidalari konfiguratsiyasining bir nechta misollari yuqorida aytib o'tilgan. Ammo mening fikrimcha, bu etarli emas, shuning uchun men o'z misolimni keltiraman. Ushbu qoidalar to'plami ushbu saytda ishlaydi, chunki siz ko'rib turganingizdek, hech qanday muammo yo'q.

Shu bilan birga, siqilish tezda sodir bo'ladi, sayt tormozsiz tez yuklanadi. Bu kodni .htaccess faylingizga joylashtirishingiz kifoya. Agar sizning shaxsiy serveringiz bo'lsa, menimcha, siz hamma narsani o'zingiz bilasiz.

Asosiy auditoriya uchun foydalanish bo'yicha ko'rsatmalar:

  1. Biz har qanday mashhur ftp mijozi bilan serverga boramiz;
  2. Saytning ildiziga o'ting (katalog);
  3. .htaccess fayli saytning asosiy katalogida joylashgan;
  4. Biz uni matn muharriri bilan ochamiz, umuman Sublime Text 3 yaxshiroq;
  5. Keyin, faylning eng oxirida, quyida ko'rsatiladigan kodni joylashtiring.
  6. Sizdan kodni tekshirishingizni so'raymiz, chunki saytda nusxa ko'chirish himoyasi mavjud (kod oxirida saytga havola bo'lishi mumkin).

# GZIPni yoqing
ifmodule mod_deflate.c "<>" qavs ichiga olinishi kerak
AddOutputFilterByType DEFLATE matn/tekis
AddOutputFilterByType DEFLATE matn/matn
AddOutputFilterByType DEFLATE matn/html
AddOutputFilterByType DEFLATE matn/tekis
AddOutputFilterByType DEFLATE matn/xml
AddOutputFilterByType DEFLATE matn/css
AddOutputFilterByType DEFLATE rasm/gif
AddOutputFilterByType DEFLATE rasm/jpeg
AddOutputFilterByType DEFLATE rasm/jpg
AddOutputFilterByType DEFLATE image/png
AddOutputFilterByType DEFLATE rasm/gif
AddOutputFilterByType DEFLATE rasm/flv
AddOutputFilterByType DEFLATE rasm/ico
AddOutputFilterByType DEFLATE image/swf
AddOutputFilterByType DEFLATE ilovasi/rss+xml
AddOutputFilterByType DEFLATE ilovasi/xhtml+xml
AddOutputFilterByType DEFLATE ilovasi/xml
AddOutputFilterByType DEFLATE ilovasi/x-javascript
AddOutputFilterByType DEFLATE ilovasi/javascript
AddOutputFilterByType DEFLATE ilovasi/json
AddOutputFilterByType DEFLATE video/3gpp
AddOutputFilterByType DEFLATE video/3gpp2
AddOutputFilterByType DEFLATE video/x-flv
AddOutputFilterByType DEFLATE video/jpm
AddOutputFilterByType DEFLATE video/jpeg
AddOutputFilterByType DEFLATE video/x-m4v
AddOutputFilterByType DEFLATE video/mp4
AddOutputFilterByType DEFLATE video/ogg
AddOutputFilterByType DEFLATE video/webm
AddOutputFilterByType DEFLATE video/tezkor vaqt
AddOutputFilterByType DEFLATE audio/x-mpegurl
AddOutputFilterByType DEFLATE audio/midi
AddOutputFilterByType DEFLATE audio/mp3
AddOutputFilterByType DEFLATE audio/mp4
AddOutputFilterByType DEFLATE audio/mpeg
AddOutputFilterByType DEFLATE audio/webm
AddOutputFilterByType DEFLATE audio/asosiy
AddOutputFilterByType DEFLATE audio/x-wav
AddOutputFilterByType DEFLATE audio/wav
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4.0[678] no-gzip
BrowserMatch bMSIE !no-gzip !gzip-only-text/html
ifmodule mod_gzip.c "<>" qavs ichiga olinishi kerak
mod_gzip_on Ha
mod_gzip_item_include fayl \.js$
mod_gzip_item_include fayl \.css$
/ifmodule “<>” qavs ichiga olinishi kerak
/ifmodule “<>” qavs ichiga olinishi kerak

Agar kerakli elementlarni qavs ichiga kiritmasangiz, xatoga yo'l qo'yasiz. Sizning saytingiz shunchaki ishlashni to'xtatadi va sizga 500 ta ichki server xatosini beradi. Koddan “<>” qavs ichiga olinishi kerak” matni ham olib tashlanishi kerak. Shundan so'ng, .htaccess faylini saqlash kerak.

Yangi qoidalarni to'liq qo'llash uchun serverni qayta ishga tushirish ham yaxshi fikr. Ushbu barcha harakatlardan so'ng saytingiz tezroq ishlaydi. Sahifani yuklash tezligi sezilarli darajada oshadi.

Veb-saytni yuklash tezligini va Gzip siqishni tekshiring

Server tomonida siqishni yoqganimizdan so'ng. Bajarilgan ishning muvaffaqiyatini tekshirishingiz mumkin! Buni bir nechta mashhur onlayn vositalar yordamida qilishingiz mumkin. Keling, ularni ko'rib chiqaylik:

PageSpeed Insights - saytni tekshirish uchun asosiy va eng mashhur onlayn vosita. 2018 yilda Google tomonidan so'nggi o'zgarishlardan keyin. Saytni batafsil tahlil qilish uchun ma'lumotlarning keng ro'yxatini taqdim etadi.

PageSpeed ​​​​Insights haqida ko'proq bilib oling.

Nima mumkin:

  1. Umumiy sayt tezligi reytingi;
  2. Kontentni yuklash vaqtini belgilaydi;
  3. Umumiy tezlik indeksi va o'zaro ta'sir qilish vaqti;
  4. Optimallashtirish bo'yicha tavsiyalar beradi;
  5. Batafsil ishlash ma'lumotlarini ko'rsatadi;
  6. Gzip siqish yoqilgan yoki yo'qligini ko'rsatadi;
  7. Hashing yoqilgan yoki yoqilmaganligini ko'rsatadi;
  8. Xatolarni tuzatish uchun ko'plab ma'lumotlarni taqdim etadi.

PageSpeed veb-sayt tezligidagi ko'plab muammolarni hal qilishga yordam beradi. Ushbu vosita tufayli saytimdagi ko'plab xatolar tuzatildi.

Pingdom vositalari shuningdek, mashhur onlayn veb-sayt tahlil vositalaridan biridir. Turli saytlarni baholash mezonlari bo'yicha etarlicha batafsil ma'lumot beradi. Yuklab olishni sekinlashtiradigan narsani topish oson.

pingdom vositasi nima?

Sizga nima beradi:

  1. Saytning umumiy ish faoliyatini baholash;
  2. Sayt ma'lumotlar bazasiga so'rovlar soni;
  3. Sahifani yuklash tezligi;
  4. Kontent turi bo'yicha kontent hajmi;
  5. Server javoblari 200/301/302/404/503 va boshqalar;
  6. Domenlar bo'yicha umumiy so'rovlar;
  7. Vaziyatning grafik tasviri va boshqalar;

Sayt tezligi haqida juda ko'p ma'lumot beradi. Lekin Google kabi batafsil ko'rsatmalar bermaydi.

WordPress uchun GZIP siqish plaginlari

Qanday g'alati tuyulmasin, lekin WordPress CMS-dagi saytlar egalari ko'p bezovtalanishlari shart emas. Buning sababi - saytda siqishni yoqish uchun plaginlarning xilma-xilligi. Sizga kerak bo'lgan yagona narsa o'zingiz yoqtirgan plaginni o'rnatishdir. Keyin plagin sozlamalarida siqishni faollashtiring va yoqing. Shunda u siz uchun barcha ishlarni qiladi. Men eng mashhurlaridan bir nechtasini tasvirlab beraman.

PageSpeed Ninja WordPress uchun eng yaxshi ishlash plaginidir. Bir marta bosish orqali Google PageSpeed Insights tomonidan topilgan muammolarni hal qilish orqali veb-saytlaringizni ish stoli va mobil qurilmalarda tezlashtirishingiz mumkin. Saytda siqishni tezda yoqish imkonini beradi.

Wordpress-da Google PageSpeed ​​ballingizni oshiring.

WP eng tez kesh shuningdek, eng mashhur xesh plaginlaridan biridir. U juda ko'p guruhlangan sozlamalarga ega, ulardan biri siqishni o'z ichiga oladi.

WP Fastest Cache - WordPress uchun plagin.

Kometa keshi Men o'zim ushbu plagindan foydalanaman. Boshqa plaginlar bilan birgalikda u ajoyib natija beradi. Shuningdek, uning sozlamalaridan biri gzip siqishni o'z ichiga oladi.

Comet Cache har bir sahifaning keshini yaratadi.

Umuman olganda, Wordpress uchun barcha asosiy keshlash plaginlari saytdagi GZIP siqishni yoqish imkonini beradi. Men eng kam yuk uchun to'liq huquqli ko'p funktsiyali plaginlarni tavsiya qilaman.

Xulosa qilib aytganda, men quyidagilarni aytaman: siqishni yoqishni unutmang. Bu ishlashga juda yaxshi ta'sir qiladi va qidiruvda saytni ko'taradi. Umid qilamanki, ushbu maqola sizga bu borada yordam beradi.

Nikola Topni o'qiganingiz uchun tashakkur

Post qanchalik foydali?

Baholash uchun tabassum ustiga bosing!

o'rtacha reyting 5 / 5. Baholar soni: 52

Hozircha reytinglar yo‘q. Avval baho bering.

Sizga ham yoqishi mumkin...

1 Javob

  1. Илья izohi:

    Men darhol kodni nusxa ko'chirdim va qo'ydim, bu xato 500. Endi diqqat bilan o'qishim kerak bo'lgan narsani tushunaman. Ko'ryapmanki, sizda nusxa ko'chirish himoyasi ham bor. Va kontent tufayli mos va ishlaydi.

Fikr bildirish

Email manzilingiz chop etilmaydi. Majburiy bandlar * bilan belgilangan

to'qqiz + 10 =