آموزش نحوه رفع خطای Enable gzip compression در GTmetrix
بیشتر اوقات زمان دانلود یک فیلم، برنامه، آلبوم موسیقی و هرچیزی از سایتهای مختلف فایلها با فرمت zip هستند . زمانی که شما در مورد محتوا مطالعه می کنید در سیستم عاملهای مختلف مانند ویندوز، لینوکس یا اندروید و IOS تجربه استفاده از فایلهایی با فرمت ZIP. را داشتید. شاید این سوال هم پیش بیاید که چرا استفاده از این فرمت در سایتهای دانلودی خیلی مرسوم است؟ دلیل انجام این کار به خاطر کاهش حجم فایل می باشد، چرا که وقتی فایلی را zip میکنید فشرده شده و تا حد قابل توجهی حجم فایل کمتر میشود. این کار هم برای سایت مورد نظر دارای مزیت می باشد که حجم کمتری از سرور و هاست را اشغال میکند و هم برای کاربری که در حال دانلود فایلها است ترافیک کمتری خواهد برد. استفاده از Gzip در سایت هم درست به همین دلیل می باشد و باعث کاهش حجم فایلها و افزایش سرعت سایت میشود که در این آموزش نحوه رفع خطای Enable gzip compression در GTmetrix را آموزش می دهیم.
آکادمی اولین دیتا در این آموزش ابتدا به معرفی Gzip و ضرورت استفاده از آن می پردازد و سپس به معرفی راهکارهای مختلف برای فعال سازی gzip در هاست و انواع سروررا آموزش می دهد.
Gzip چیست؟ و کاربرد آن چیست؟
قطعابا فرمتهای فشرده سازی zip و rar که برای کاهش حجم فایلها از این فرمتها استفاده میکنید آشنایی دارید. gzip هم دقیقا کارکردی مشابه این نرمافزارها و فرمتها دارد که با استفاده از الگوریتم مورد استفاده توسط همین روش فشردهسازی برای کاهش حجم صفحات سایتها مورد استفاده قرار میگیرد که آن را با نام gzip میشناسیم. امروزه همه مرورگرها از این قابلیت پشتیبانی میکنند. وقتی وارد سایتی می شوید مرورگر ابتدا درخواستی را ارسال میکند که مشخص شود که gzip روی این سرور فعال است یا خیر. اگر پاسخ به این درخواست مثبت بود و از سمت سرور هم مشخص شد که مرورگر از این قابلیت پشتیبانی میکند، سرور شروع به ارسال فایلها با فرمت فشرده شده به مرورگر میکند. اما اگر پاسخ منفی باشد فایلها با حجم عادی ارسال میشوند که در حالت فشرده نبوده و به دلیل بالا بودن حجم فایلها هم سرعت سایت شما پایین خواهد بود.
وقتی کاربری وارد سایت شما میشود درخواست برای دریافت اطلاعات سایت در مرورگر برای سرور ارسال شده و پس از اینکه سرور به این درخواست پاسخ مثبت داد فایلها شروع به بارگذاری میکنند. حالا هرچه حجم این فایلهای استفاده شده در صفحات بیشتر باشد زمان بیشتری صرف لود کامل سایت خواهد شد. بنابراین باید حجم صفحات را با استفاده از gzip کاهش دهیم تا در مدت زمان کوتاهتری یک صفحه وب برای کاربر لود شده و در دسترس قرار گیرد. با استفاده از gzip کلیه فایلهای مربوط به html، css و جاوا اسکریپت فشرده شده و کدهای تکراری اون نادیده گرفته میشوند که در نهایت منجر به افزایش سرعت سایت خواهد شد.
در فایلهایی که مربوط به برنامه نویسی هستند کدها به کاراکترهای خلاصهتر و کوتاهتر با استفاده از فناوری فشرده سازی حجم صفحات تبدیل خواهند شد. به عنوان نمونه اگر فایل شما حاوی متنی باشد که عبارت MM I ZZZZZ BB A nnn f AAA در آن درج شده باشد که شامل ۲۵ کاراکتر می باشد، به صورت خلاصه شده تبدیل شده و به شکل ۳M I 5Z 2B A 3n f 3A برای مرورگر ارسال خواهد شد که تا ۵ کاراکتر(با احتساب فاصله) خلاصه شده است. سپس مرورگر که از قابلیت Gzip پشتیبانی میکند این موضوع را درک کرده و کدها را در حالت استاندارد پردازش و در نهایت ساختار یک سایت را به درستی نمایش خواهد داد.
آنالیز و بررسی فعال بودن Gzip
قبل از اینکه به روشهای استفاده از gzip بپردازیم پیشنهاد میکنم برای اینکه واقعا ببینید gzip تا چه میزان در افزایش سرعت سایت وردپرس تاثیرگذار خواهد بود یک بار سایت خود را که از gzip استفاده نشده آنالیز و بررسی کنید. برای این منظور به وبسایت checkgzipcompression.com مراجعه کنید و سپس مشابه چیزی که در تصویر زیر مشاهده میکنید آدرس کامل سایت خود را در فیلد مربوط وارد کرده و روی آیکون جستجو کلیک کرده و منتظر بمانید تا سایت آنالیز شده و بر اساس افزونههای وردپرس و قالبی که از آن استفاده میکنید به شما بگوید که با استفاده از Gzip تا چه میزان قادر هستید تا حجم صفحات خود را کم کنید.
از آنجایی که Gzip بر روی سرورهای هاستاولین دیتا فعال است در تستی که انجام شده است ۲۸٫۱ درصد از حجم صفحات ما در مجموع کم خواهد شد. اما بر روی هاستی که gzip فعال نباشد تا ۷۰ درصد هم میشود حجم صفحات را کم کنید.
یکی دیگر از روشهای بررسی هم با استفاده از خود مرورگر هست که میتوانید با راست کلیک کردن در صفحه سایت و انتخاب گزینه Inspect Element سورس صفحات را ببینید. سپس مشابه تصویر زیر روی سربرگ Network کلیک کرده و حالا یک بار سایت را بدون بستن پنجره Inspect Element رفرش کنید. در صورتی که content-incoding: gzip را مشاهده کردید نشان دهنده فعال بودن Gzip در سایت هست.
از این بخش میتوانید میزان فشرده سازی فایلها را به صورت قبل و بعد هم مشاهده کرده و مقایسه کنید. برای این کار هم کافیست روی نمایش به صورت ردیفی کلیک کرده و از ستون Size میزان فشرده سازی برای هر فایل را ببینید.
رفع خطای Enable gzip compression در GTmetrix
برای رفع خطای Enable gzip compression در جی تی متریکس کافیست قابلیت Gzip را در سایت فعال کنید که در ادامه به معرفی روشهای فعال سازی gzip در سایتها و وب سرورهای مختلف میپردازیم.
فعال سازی Gzip در وردپرس
برای این کار میتوانید هم با استفاده از افزونه و هم با استفاده از کدنویسی اقدام به فعال کردن Gzip در سایت وردپرسی کنید. روشهای مختلفی برای فعال سازی در وردپرس وجود دارد که در روش کدنویسی باید کدها را داخل فایل htaccess. قرار دهید. برای این منظور میتوانید از مقاله آموزش نحوه فعال سازی gzip در وردپرس استفاده کنید.
فعال سازی Gzip در سرور آپاچی
برای این منظور بسته به کنترل پنل هاست سیپنل و دایرکت ادمین که استفاده میکنید ابتدا باید وارد File Manager هاست خود شوید.
مشابه تصویر بالا با کلیک روی گزینه File Manager در هاست سی پنل وارد محیط مدیریت فایلها در هاست خواهید شد، حالا به مسیری که وردپرس را در سایت نصب کردید وارد شوید. اگر وردپرس روی دامنه شما نصب شده کافیست به مسیر /public_html/مراجعه کنید و به دنبال فایلی با نام htaccess. بگردید. اما اگر اقدام به نصب وردپرس در ساب دامنه و یا ساب فولدر کردید کافیست به مسیر مورد نظر که وردپرس در آن پوشه نصب شده مراجعه کنید و فایل htaccess. را جستجو کنید .
فایل htaccess. جزو فایلهای مخفی در هاست است که ممکن است در اولین ورود به هاست قادر به مشاهده آن نباشید. بنابراین در همین مسیری که قرار دارید بر روی دکمه Settings که در بالای صفحه در سمت راست قرار دارد کلیک کنید تا پنجره زیر برای شما باز شود. سپس تیک گزینه Show Hidden Files را انتخاب کرده و در نهایت روی دکمه Save کلیک کنید تا تنظیمات ذخیره شود.
حال قادر به مشاهده فایل htaccess. هستید و میتوانید با راست کلیک کردن و انتخاب گزینه Edit این فایل را ویرایش کنید و کدهای زیر را در مکان مناسبی از فایل اضافه کنید. پیشنهاد میکنیم تا کدهای زیر را در انتهای این فایل قرار دهید تا تداخلی با سایر کدها ایجاد نشود.
<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 # Removing browser bugs for older 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>
فعال سازی Gzip در جوملا
برای فعال کردن gzip در جوملا پس از ورود به بخش مدیریت جوملا به مسیر تنظیمات کلی مراجعه کرده و در تب سرور گزینه فشرده سازی Gzip را فعال کرده و تنظیمات را ذخیره کنید.