نحوه فشرده سازی gzip

فشرده سازی gzip چیست ؟

وقتی کاربر از وب سایت شما بازدید می کند برای ارائه پرونده های در خواست شده با سرور شما تماس می گیرد. هر چه این فایل ها بزرگتر باشند زمان بیشتری نیاز دارند تا بتوانند به مرورگر دسترسی پیدا کنند و روی صفحه ظاهر شوند. Gzip قبل از ارسال پرونده ها به مرورگر آنها را فشرده می کند و به طور چشمگیری زمان انتقال را کاهش می دهد زیرا  پرونده ها بسیار کوچکتر هستند. از نظر هزینه در مقابل سود، در صورتی که gzip را در بهینه سازی صفحات خود استفاده نکنید ممکن است در سرعت بارگذاری شما بسیار تاثیر گذار باشد.

چگونه کارمی کند؟

Gzip در واقع یک ایده نسبتا ساده است که در زمان استفاده خوب از آن بسیار قدرتمند است. Gzip   رشته های مشابه را درون یک فایل متنی قرار می دهد و آن رشته ها را به طور موقت جایگزین می کند تا اندازه کلی پرونده کوچکتر شود. دلیل اینکه در محیط وب gzip خوب کار می کند این است که فایل های css و فایل های html از متن تکراری استفاده می کنند و فضای زیادی دارند. از انجا که gzip رشته های متداول را فشرده می کند. این می تواند سایز صفحات و شیوه نامه ها (style sheet) را تا 70 درصد کاهش دهد!

Gzip باید در وب سرور شما فعال شود. هنگامی که یک مرور گر از وب سرور بازدید می کند ، بررسی می کند سرور gzip را فعال کرده و صفحه وب را در خواست می کند. اگر فعال باشد پروند gzip که به طور قابل توجهی کوچکتر است را دریافت می کند در غیر این صورت هنوز صفحه را دریافت می کند اما فقط نسخه غیرفشرده سازی شده که حجم بسیار زیادی دارد دریافت می کند.

چرا مهم است ؟

دلیل اصلی اهمیت gzip ،این می باشد که باعث می شود مدت زمان لازم برای یک وب سایت جهت انتقال پرونده ها و شیوه نامه ها کاهش یابد و در نهایت زمان بارگذاری وب سایت شما کاهش می یابد.

چگونه GZIP فعال می شود ؟

روش های مختلفی برای تنظیم GZIP بسته به نوع وب سرویس (IIS ، Apache و غیره) وجود دارد

اگر وب سرور شما iis است از دستور العمل ماکروسافت جهت فعال سازی gzip می توانید  استفاده کنید که در مقالات بعدی این روش آموزش داده خواهد شد

برای آپاچی شما باید خطوط زیر را به فایل .htaccess  خود اضافه کنید .

<IfModule mod_deflate.c>
  # Compress HTML, CSS, JavaScript, Text, XML and fonts
  AddOutputFilterByType DEFLATE application/javascript
  AddOutputFilterByType DEFLATE application/rss+xml
  AddOutputFilterByType DEFLATE application/vnd.ms-fontobject
  AddOutputFilterByType DEFLATE application/x-font
  AddOutputFilterByType DEFLATE application/x-font-opentype
  AddOutputFilterByType DEFLATE application/x-font-otf
  AddOutputFilterByType DEFLATE application/x-font-truetype
  AddOutputFilterByType DEFLATE application/x-font-ttf
  AddOutputFilterByType DEFLATE application/x-javascript
  AddOutputFilterByType DEFLATE application/xhtml+xml
  AddOutputFilterByType DEFLATE application/xml
  AddOutputFilterByType DEFLATE font/opentype
  AddOutputFilterByType DEFLATE font/otf
  AddOutputFilterByType DEFLATE font/ttf
  AddOutputFilterByType DEFLATE image/svg+xml
  AddOutputFilterByType DEFLATE image/x-icon
  AddOutputFilterByType DEFLATE text/css
  AddOutputFilterByType DEFLATE text/html
  AddOutputFilterByType DEFLATE text/javascript
  AddOutputFilterByType DEFLATE text/plain
  AddOutputFilterByType DEFLATE text/xml
  # Remove browser bugs (only needed for really old browsers)
  BrowserMatch ^Mozilla/4 gzip-only-text/html
  BrowserMatch ^Mozilla/4\.0[678] no-gzip
  BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
  Header append Vary User-Agent
</IfModule>

مطالب مرتبط

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *