دارایی های ثابت را با یک خط مشی کش کارآمد ارائه دهید

کش HTTP می تواند زمان بارگذاری صفحه شما را در بازدیدهای مکرر افزایش دهد.

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

چگونه ممیزی خط مشی کش Lighthouse شکست می خورد

Lighthouse همه منابع استاتیکی را که در حافظه پنهان ذخیره نمی شوند، علامت گذاری می کند:

تصویری از دارایی‌های استاتیک Lighthouse Serve با ممیزی سیاست کش کارآمد

Lighthouse یک منبع را در صورت وجود تمام شرایط زیر در نظر می گیرد.

  • منبع یک فونت، تصویر، فایل رسانه ای، اسکریپت یا شیوه نامه است.
  • این منبع دارای کد وضعیت HTTP 200 ، 203 یا 206 است.
  • این منبع یک خط مشی صریح بدون حافظه پنهان ندارد.

هنگامی که صفحه ای در ممیزی با شکست مواجه می شود، Lighthouse نتایج را در یک جدول با سه ستون فهرست می کند:

URL محل منبع قابل کش
کش TTL مدت زمان کش فعلی منبع
اندازه انتقال تخمینی از داده‌هایی که کاربران شما در صورت ذخیره‌سازی منبع پرچم‌گذاری شده ذخیره می‌کنند

چگونه منابع استاتیک را با استفاده از HTTP cache کنیم

سرور خود را برای بازگرداندن هدر پاسخ HTTP Cache-Control پیکربندی کنید:

Cache-Control: max-age=31536000

دستورالعمل max-age به مرورگر می گوید که چه مدت باید منبع را در چند ثانیه کش کند. این مثال مدت زمان را روی 31536000 تنظیم می کند که مربوط به 1 سال است: 60 ثانیه × 60 دقیقه × 24 ساعت × 365 روز = 31536000 ثانیه.

شما باید دارایی های ثابت غیرقابل تغییر را برای مدت طولانی، مانند یک سال یا بیشتر، کش کنید.

اگر منبع تغییر می کند و تازگی اهمیت دارد، از no-cache ، اما همچنان می خواهید برخی از مزایای سرعت کش را به دست آورید. مرورگر همچنان منبعی را ذخیره می‌کند که روی no-cache تنظیم شده است، اما ابتدا با سرور بررسی می‌کند تا مطمئن شود که منبع هنوز جاری است.

مدت زمان کش طولانی تر همیشه بهتر نیست. در نهایت، این شما هستید که تصمیم می گیرید مدت زمان کش بهینه برای منابع شما چقدر باشد.

دستورالعمل های زیادی برای سفارشی کردن نحوه ذخیره منابع مختلف توسط مرورگر وجود دارد. درباره ذخیره منابع در حافظه پنهان HTTP بیشتر بیاموزید: اولین خط راهنمای دفاعی شما و پیکربندی کدهای رفتار حافظه پنهان HTTP .

نحوه تأیید پاسخ های ذخیره شده در حافظه پنهان در Chrome DevTools

برای اینکه ببینید مرورگر چه منابعی را از حافظه پنهان خود دریافت می‌کند، تب Network را در Chrome DevTools باز کنید:

[نظر]: <> (لیست زیر یک کد کوتاه از web.dev بود، اما از انگلیسی برای هیچ زبانی ترجمه نشده بود.) 1. برای باز کردن Control + Shift + J (یا Command + Option + J در Mac) را فشار دهید تا باز شود. DevTools. 2. روی تب Network کلیک کنید.

ستون Size در Chrome DevTools می تواند به شما کمک کند تأیید کنید که یک منبع در حافظه پنهان ذخیره شده است:

ستون اندازه.

کروم بیشترین منابع درخواستی را از کش حافظه ارائه می کند که بسیار سریع است، اما با بسته شدن مرورگر پاک می شود.

برای تأیید اینکه هدر Cache-Control یک منبع مطابق انتظار تنظیم شده است، داده‌های هدر HTTP آن را بررسی کنید:

  1. روی URL درخواست، در زیر ستون نام جدول درخواست‌ها کلیک کنید.
  2. روی تب Headers کلیک کنید.
بررسی هدر Cache-Control از طریق تب Headers
بررسی هدر Cache-Control از طریق تب Headers .

راهنمایی مخصوص پشته

دروپال

حداکثر سن مرورگر و حافظه پنهان پراکسی را در صفحه Administration > Configuration > Development تنظیم کنید. به منابع عملکرد دروپال مراجعه کنید.

جوملا

کش را ببینید.

وردپرس

ذخیره مرورگر را ببینید.

منابع