خطای بعضی وقت ها ما فایل هایی را در سیستم خود داریم برای اینکه حجم کمتری را به خود اختصاص دهند فشرده سازی می کنیم مثلا آن ها را به حالت zip یا  rar تغییر می دهیم.چون انتقال این نوع فایل ها راحت و سریع تر می شود. عمل Gzip باعث می شود بازدیدکنندگان ، فایل هایی را که در سایت ما هستند را سریع تر دریافت کنند وسایت نیز سریع تر به آن ها نشان داده میشود که این باعث ایجاد ux (یعنی تجربه خوب برای کاربرمی شود).تابع Gzip هر فایلی ازسمت سرور را فشرده سازی نمی‌کند، مثلا در این مقاله منظورفایل‌هایی مانند html ، css و جاوا اسکریپت را فشرده می کند که در نهایت باعث افزایش سرعت سایت می شود.وقتی وارد سایتی می شوید. ابتدا مرورگر درخواستی را تحت http به سرور ارسال می کند. که بفهمد gzip روی این سرور فعال است یا خیر.اگر جواب این درخواست مثبت بود، فایل ها با فرمت فشرده شده به مرورگر ارسال می شود.اما اگر جواب منفی بودفایل ها با حجم عادی ارسال می شوند.که باعث پایین آمدن سرعت سایت می شود.compress componets with gzip
آموزش رفع خطای compress componets with gzip درgtmetrix
سپتامبر 13, 2020
چطور در اینستاگرام درآمدم را بالا ببرم ؟ گذاشتن استوری به بالا بردن درآمد کمک می کند همانطور که می دانید، استوری ها 80 درصد بیشتر از پست های عادی دیده می شوند. پس قطعا می توانند فروش خوبی را برای ما به ارمغان بیاورند. لایو بگذارید و با مشتری ها ارتباط برقرار کنید لایو می تواند برای هر کسب و کار مثل یک برگ برنه باشد.با مشتری ها در مورد محصولات و خدمات خود رو در رو صحبت کنید ، گذاشتن لایو می تواند بازخورد خوبی داشته باشد و فروش شما را افزایش دهد. پست های متنوع بگذارید وقتی کسی وارد پیج شما می شود ، تنوعی که در پیج وجود دارد باید آن ها را جذب کند. فالوورهای واقعی جذب کنید وقتی هدف شما فروش محصول و ارائه خدمات است ، فالوور فیک به درد شما نمیخورد. پس سعی کنید فالوورهای واقعی باشید ، فالوورهایی که از شما خرید کنند و شما را به بقیه نیز معرفی کنند. استفاده از هشتگ هشتگ در اینستاگرام چیزی شبیه به کلمات کلیدی در سایت است. سعی کنید در حوزه کاری که در ان قرار دارید هشتگ های پرطرفدار را پیدا کنید.استفاده از هشتگ ها باعث می شود که افراد زیادی با کسب و کار شما آشنا شوند که رابطه مستقیمی با افزایش فروش و افزایش درآمد دارد.
راه های کسب درآمد از طریق اینستاگرام
سپتامبر 14, 2020

آموزش رفع خطای add expires headers در gtmetrix

این پارامتر مربوط به فایل هایی است که می توانند به صورت کش شده در مرورگر باقی بمانند و به جای لود مستقیم از سرور ، از سمت مرورگر که به صورت کش شده ذخیره شده اند لود شود. اما در منابع خارجی مثل گراواتارو.. به دلیل اینکه کنترلی روی این موضوع نداریم معولا نشان داده خواهد شد.اما اگر فایل هایی که روی هاست قرار دارند در اینجا نشان داده شد ، با استفاده از فایل.htaccess   مشخص کنید که این فایل ها تا چه زمانی به صورت کش شده روی مرورگر کاربر باقی بمانند و از مرورگر لود شوند.این قابلیت باعث می شود مدت زمان بارگذاری صفحات کاهش یابد و تعداد درخواست هایی که از مرورگر به سرور ارسال می شود نیز کم شود. توجه داشته باشید که اطلاعاتی که به صورت کش ذخیره می شوند دارای تاریخ انقضا هستند و هر فایل متناسب با نوع آن باید دارای تاریخ انقضایی مشخص باشند. وپس از گذشت این مدت زمان از لود شدن و کش بودن آن محتوا، دوباره نیاز به بروزرسانی و لود شدن آن است. اگر تاریخ انقضا تعریف نشده باشد هربار که کاربر وارد یک صفحه می شود تمامی اطلاعات لود می شود. که در این صورت ارور add expires headers بوجود می آید.

آموزش رفع خطای add expires headers در gtmetrix

یکی از خطاهایی که هنگام تست سرعت سایت با  Gtmetrix با آن مواجه می شویم به نام خطای add expires headers که از سری خطاهای yslow است.

 

add expires headers چیست ؟

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

توجه داشته باشید که اطلاعاتی که به صورت کش ذخیره می شوند دارای تاریخ انقضا هستند و هر فایل متناسب با نوع آن باید دارای تاریخ انقضایی مشخص باشند. وپس از گذشت این مدت زمان از لود شدن و کش بودن آن محتوا، دوباره نیاز به بروزرسانی و لود شدن آن است.

اگر تاریخ انقضا تعریف نشده باشد هربار که کاربر وارد یک صفحه می شود تمامی اطلاعات لود می شود. که در این صورت ارور add expires headers بوجود می آید.

برای رفع این خطای add expires headers ابتدا شما باید از زمان تغییرات در فایل های خود اطلاع داشته باشید.یعنی اینکه بدانید فایل های سایت شما چند مدت یکبار آپدیت می شوند. مثلا فایل های favicon معمولا تغییری نمی کنند پس بهتر است که مدت زمان کش مرورگر آن ها طولانی  باشد. مدت زمان کش کش برای عکس ها معمولا ثبت است.فایل های javascript هرچند مدت یک بار تغییر میکنند . اما فایل های css بیشتر تغییر می کنند و آپدیت می شوند.

خطای add expires headers

حال چگونه خطای add expires headers را رفع کنیم ؟

برای رفع این خطای add expires headers ابتدا شما باید از زمان تغییرات در فایل های خود اطلاع داشته باشید.یعنی اینکه بدانید فایل های سایت شما چند مدت یکبار آپدیت می شوند.

این مقاله رو هم بخونید
آموزش رفع خطایinline small css در gtmetrix

مثلا فایل های favicon معمولا تغییری نمی کنند پس بهتر است که مدت زمان کش مرورگر آن ها طولانی  باشد. مدت زمان کش کش برای عکس ها معمولا ثبت است.فایل های javascript هرچند مدت یک بار تغییر میکنند . اما فایل های css بیشتر تغییر می کنند و آپدیت می شوند.

 روش اول : اضافه  کردن کد زیردر فایل .htaccess  برای رفع خطای add expires headers :

برای این کار وارد هاست خود شوید و بعد از اینکه وارد file manager شدید، فایل .htaccess را پیدا کنید. اگر آن را ندید رویsettings در بالای صفحه فایل منیجر کلیک کنید سپس پنجره ای باز می شود مانند تصویر زیر گزینه  show hidden files را فعال کنید. وکد زیر را وارد نمایید .

برای این کار وارد هاست خود شوید و بعد از اینکه وارد file manager شدید، فایل .htaccess را پیدا کنید. اگر آن را ندید رویsettings در بالای صفحه فایل منیجر کلیک کنید سپس پنجره ای باز می شود مانند تصویر زیر گزینه  show hidden files را فعال کنید. وکد زیر را وارد نمایید .


EXPIRES CACHING ##
<IfModule mod_expires.c>
ExpiresActive OnExpiresByType image/jpg "access plus 1 month"
ExpiresByType image/jpeg "access plus 1 month"
ExpiresByType image/gif "access plus 1 month"
ExpiresByType image/png "access plus 1 month"
ExpiresByType image/svg "access plus 1 month"
ExpiresByType text/css "access plus 1 month"
ExpiresByType application/pdf "access plus 1 month"
ExpiresByType text/x-javascript "access plus 1 month"
ExpiresByType application/x-shockwave-flash "access plus 1 month"
ExpiresByType image/x-icon "access plus 1 year"
ExpiresDefault "access plus 2 days"
</IfModule>
EXPIRES CACHIN ##

در کد بالا در خط 9 و11 که مربوط به فایل های css و javascript هستند مدت زمان  ذخیره آن ها را 1 ماه تعیین کردیم.

در خط 4 تا 8 که مربوط به عکس ها هستند مشخص کردیم عکس از هر نوع فرمتی که بودند 1 ماه در مرورگر باقی بمانند.

در خط 13 برای فایل هایی که بصورت favicon هستند مشخص کردیم که در مدت زمان 1 سال در حافظه کش مرورگر باقی بمانند. و برای سایر فایل ها نیز باید به همین شیوه عمل کنیم.

این مقاله رو هم بخونید
آموزش رفع خطای use a content delivery network (CDN) در gtmetrix

 

روش دوم : اضافه کرد کد زیر در Nginx برای رفع خطای add expires headers :

برای رفع این خطا در nginx کافیست کد زیر را وارد کنید.

 

Location ~* /. (jpg/jpeg/ gif/png)$  {expires  365d;}
Location ~* /.(pdf/css/html/js/swf)$  {expires  2d;}

روش سوم : استفاده از پلاگین :

کافیست یکی از این پلاگین ها را نصب کرده و استفاده کنید.

Hummingbird  یک پلاگین رایگان برای استفاده است که به شما امکان می دهد سرعت سایت خود را بهینه کنید. همچنین دارای گزینه های ذخیره سازی خوب است. WP Rocket  برای افزودن هدرهای منقضی شده به سایت وردپرس شما نیز گزینه خوبی است.

امیدواریم که این مقاله و رفع این خطا برای افزایش سرعت سایت و بهبود سئو سایتتان موثر باشد.

مطالب قبلی :

آموزش رفع خطای compress componets with gzip درgtmetrix

آموزش رفع خطای use a content delivery network (CDN) در gtmetrix

آموزش رفع خطای specify a character set early در gtmetrix

 

Aida Parvaresh
Aida Parvaresh
آیداپرورش هستم،علاقمند به تکنولوژی و تولید محتوا،مدتیه که با تیم خوب هفت وب همکاری دارم.

1 Comment

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

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