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

فشرده سازی Gzip

Gzip یک روش فشرده سازی فایل ها (کم حجم کردن آن ها) جهت انتقال سریعتر در شبکه است.

Gzip همچنین یک فرمت فایل نیز می باشد.

فشرده سازی Gzip
فشرده سازی Gzip

Gzip باعث کاهش حجم سایت و افزایش سرعت لود سایت می‌شود، فشرده سازی حجم فایل ها را کاهش می دهد و این امکان را برای وب سرور فراهم می کند که با سرعت بیشتری کاربران سایت را مشاهده کنند.

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

فایل‌های با حجم کمتر به بازدیدکنندگان سایت شما اجازه می‌دهد تا فایل‌های سایت را سریع‌تر دریافت کنند و در نتیجه سایت شما را سریع‌تر مشاهده کنند. لازم بذکر است که تابع Gzip هر فایلی در سمت سرور را فشرده سازی نمی‌کند، فشرده سازی صرفا منوط به فایل‌هایی مانند فایلهای   HTML ، فایل‌های استایل‌دهی (stylesheets) و جاوااسکریپت (JavaScript) می‌باشد و شامل تصاویر و بقیه فایل‌های موجود دیگر نیست.

چطور Gzip compression کار می کند؟

نحوه کار Gzip compression
نحوه کار Gzip compression

وقتی کاربر آدرس سایتی را در مروگر درج  می کند، مرورگر اول یک درخواست از سمت header یعنی “content-encoding: gzip” ارسال می‌کند تا بررسی کند آیا جواب این درخواست مثبت است یا منفی.

اگر درخواست از سمت سرور شناسایی شد و مثبت بود، سرور فایل‌های فشرده شده را به مرورگر ارسال می‌کند، درغیر این صورت سرور فایل‌های غیر فشرده و سنگین را به مرورگر ارسال می‌کند. همه مرورگرهای جدید gzip را پشتیبانی می کنند.

فشرده سازی gzip چقدر موثر است؟

فشرده سازی Gzip
فشرده سازی Gzip

مزیت استفاده از Gzip compression  این است که فشرده سازی فایل های HTML و CSS شما با gzip معمولا حدود پنجاه تا هفتاد درصد حجم فایل را ذخیره می کند. این به این معنی است که زمان بارگذاری صفحات شما کمتر شده وپهنای باند کمتر نیز مورد استفاده قرار می‌گیرد.

نحوه بررسی فعال بودن gzip

از طریق سایت varvy.com  می توانید فعال بودن gzip را بررسی کنید

نحوه فعالسازی Gzip compression

فشرده سازی از طریق تنظیمات وب سرور فعال می شود

Webserver های مختلف دستورالعمل های مختلفی دارند (که در ادامه توضیح داده می شود)

در این مقاله رایج ترین روش های فعال سازی فشرده سازی از جمله در وردپرس، جوملا، .htaccess و وب‌سرورهای Apache، Nginx و IIS تشریح می شود.

فعال سازی gzip در وردپرس

فعالسازی Gzip compression
فعالسازی Gzip compression

جهت فعالسازی gzip در وردپرس می توانید از پلاگین های کش که از این قابلیت پشتیبانی می کنند، استفاده کنید. پلاگین‌هایی مانند WP Rocket و W3 Total Cache بصورت خودکار کد مربوط به فعالساری را در فایل .htaccess سایت قرار می دهند. البته نیاز است دسترسی لازم برای نوشتن در فایل .htaccess را داده باشید.

فعال سازی gzip در جوملا

جهت فعالسازی gzip در جوملا وارد مدیریت جوملا شده سپس در منوی سایت – تنظیمات کلی وارد شوید و در تب سرور گزینه فشرده سازی Gzip را روی بلی قرار داده و سپس تغییرات را ذخیره نمائید.

فعالسازی Gzip compression
فعالسازی Gzip compression

فعال سازی gzip در htaccess

جهت فعالسازی gzip در htaccess، ابتدا فایل  .htaccess  سایت را باز نموده و کد زیر را در آن درج نمائید و سپس تغییرات را ذخیره کنید.

<ifModule mod_gzip.c>

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.*

</ifModule>

فعالسازی gzip در  apache

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

AddOutputFilterByType DEFLATE text/plain

AddOutputFilterByType DEFLATE text/html

AddOutputFilterByType DEFLATE text/xml

AddOutputFilterByType DEFLATE text/css

AddOutputFilterByType DEFLATE application/xml

AddOutputFilterByType DEFLATE application/xhtml+xml

AddOutputFilterByType DEFLATE application/rss+xml

AddOutputFilterByType DEFLATE application/javascript

AddOutputFilterByType DEFLATE application/x-javascript

فعالسازی gzip در وبسرور NGINX

برای فعال کردن فشرده سازی در NGINX، لازم است کد زیر را به فایل کانفیگ خود اضافه کنید

gzip on;

gzip_comp_level 2;

gzip_http_version 1.0;

gzip_proxied any;

gzip_min_length 1100;

gzip_buffers 16 8k;

gzip_types text/plain text/html text/css application/x-javascript text/xml application/xml application/xml+rss text/javascript;



# Disable for IE < 6 because there are some known problems

gzip_disable "MSIE [1-6].(?!.*SV1)";



# Add a vary header for downstream proxies to avoid sending cached gzipped files to IE6

gzip_vary on;

فعال سازی gzip در IIS

جهت فعالسازی gzip در iis،  بصورت زیر اقدام نمائید.

ابتدا از بخش server manager به صفحه Select Role Services مراجعه کرده و سپس گزینه های Web Server و در ادامه Performance را باز کرده و از فعال بودن دو گزینه Static Content Compression و Dynamic Content Compression اطمینان یابید.

فعالسازی Gzip compression
فعالسازی Gzip compression

سپس IIS Manager را باز نموده و برروی نام سرور کلیک نمایید.

برروی گزینه Compression دابل کلیک نمایید، در صفحه باز شده تیک دو گزینه زیر را فعال کرده و برروی دکمه Apply موجود در بخش سمت راست کلیک نمایید.

Enable Static Content Compression

Enable Dynamic Content Compression

برروی نام سایت مورد نظر خود کلیک کرده و در قسمت compression آن مجدداً دو گزینه اعلام شده را فعال نمایید.

حال نیاز است تنظیمات را در فایل وبکانفیگ سایت موردنظر نیز بصورت زیر فعال کنید:

پس از اطمینان از نصب ماژول فشرده سازی صفحات وب در سمت تنظیمات سرور، اکنون لازم است کد زیر را به Web.Config سایت اضاف کنید:

<system.webServer>


    <httpCompression directory="%SystemDrive%\inetpub\temp\IIS Temporary Compressed Files">

      <scheme name="gzip" dll="%Windir%\system32\inetsrv\gzip.dll" staticCompressionLevel="9" />

      <dynamicTypes>

        <add mimeType="text/*" enabled="true" />

        <add mimeType="message/*" enabled="true" />

        <add mimeType="application/x-javascript" enabled="true" />

        <add mimeType="application/javascript" enabled="true" />

        <add mimeType="application/json" enabled="true" />

        <add mimeType="application/json; charset=utf-8" enabled="true" />

        <add mimeType="application/atom+xml" enabled="true" />

        <add mimeType="application/xaml+xml" enabled="true" />

        <add mimeType="*/*" enabled="false" />

      </dynamicTypes>

      <staticTypes>

        <add mimeType="text/*" enabled="true" />

        <add mimeType="message/*" enabled="true" />

        <add mimeType="application/x-javascript" enabled="true" />

        <add mimeType="application/javascript" enabled="true" />

        <add mimeType="application/json" enabled="true" />

        <add mimeType="application/json; charset=utf-8" enabled="true" />

        <add mimeType="application/atom+xml" enabled="true" />

        <add mimeType="application/xaml+xml" enabled="true" />

        <add mimeType="*/*" enabled="false" />

      </staticTypes>

    </httpCompression>

    <urlCompression doStaticCompression="true" doDynamicCompression="true" />


  </system.webServer>

در اینجا تنظیمات مخصوص نحوه‌ی فعال سازی فشرده سازی صفحات پویا و فایل‌های استاتیک را مشاهده می‌کنید. در این تنظیمات محل قرارگیری فایل‌های موقتی فشرده شده توسط این ماژول و همچنین mime typeهای مدنظر جهت فشرده سازی، ذکر شده‌اند. با این تنظیمات، تنها mime typeهایی که به صورت صریح ذکر شده‌اند فشرده خواهند شد و از سایر mime types صرفنظر می‌شود.

فعال سازی gzip در litespeed

جهت فعال کردن فشرده سازی در وب سرورهای Litespeed،  در قسمت   Web Admin Console → Server → Tuning رفته و بررسی کنید که  گزینه enable compression فعال است یا خیر، اگر فعال نبود گزینه “edit” را انتخاب نموده و سپس این قابلیت را فعال کنید.

جهت فعال کردن mimetype جدید نیز بصورت زیر اقدام کنید:

در کنسول مدیریت لایت اسپید مسیر زیر را دنبال کنید:

Web Admin Console → Server → Tuning → GZIP Compression → Edit →  Compressible Types

در این قسمت mimetype جدید مدنظر در این مثال application/json را  اضافه نموده و تغییرات را ذخیره و رابط گرافیکی لایت اسپید را ریستارت نمائید.

فعال سازی gzip در litespeed

نتیجه گیری:

درصورتیکه بدنبال راهکاری جهت بهینه سازی سایت، افزایش سرعت و کاهش ترافیک مصرفی می باشید، فعالسازی Gzip compression یکی از موارد موثر خواهد بود.

وبلاگ آریانانت
وبلاگ آریانانت

ارائه پهنای باند و ترافیک نامحدود بدون هیچگونه محدودیتی و همچنین ارائه سرویس های باکیفیت با قیمتی مناسب ، خرید راحت و امن و تحویل سریع سرویس ها

هیچ نظری وجود ندارد

  • سلام، مهمان

مقالات آموزشی تصادفی

جزئیات سرویس ها

1- سرویس های مخصوص بورس ، برای آپلود / دانلود فایل های حجیم نیستند، کاربر نباید صد ها گیگابایت فایل بر روی سرور ها به طور مداوم دانلود کنید .

2-  سرور های بورس نهایتا قابلیت اتصال 2 سیستم همزمان را دارد .

3- سرعت آپلود و دانلود در سرور های بورس به شرح زیر میباشد ( سرعت ها در اکثر موارد از این مقادیر بسیار بالاتر است و این موارد به صورت پیش فرض میباشند ) :
پلن اول : 60 مگ بر ثانیه ، پلن دوم : 80 مگ برثانیه ، پلن سوم : 150 مگ بر ثانیه ، پلن چهارم : 350 مگ بر ثانیه ، پلن پنجم : 800 مگ بر ثانیه
 
4- هیچگونه تضمینی طبق قوانین ، در مورد رتبه ، زمان و سرعت سرخطی به کاربر قابل ارائه نیست و ما توانایی دادن تضمین در رتبه شما را نداریم .
 
5- امکان بازگشت وجه و کنسلی سرویس  با توجه به راه اندازی زمان بر سرویس ها و هزینه هایی که برای اجاره اینترنت داده میشود وجود ندارد در صورت مشکل داشتن سرویس ، سرویس تعویض می گردد .
 
6- قوانین یک تا پنج را مجدد بخوانید و اقدام به خرید نمایید .