CDN ابری

منظور از هدر Cache Control چیست؟

Shahin Noei Shahin Noei
21 بازدید 0 دیدگاه 16 آبان 1401
/storage/post-covers/1667735547_2022-11-06_cloud-servers-370x370.png /storage/post-images/1667735547_2022-11-06_cloud-servers-830x250.png
منظور از هدر Cache Control چیست؟

Cache-control یک هدر HTTP است که سیاست هایی را برای کش کردن مرورگرها هم برای درخواست های کلاینت و هم پاسخ های سرور تعیین می کند.  این سیاست ها شامل مواردی مثل نحوه کش کردن منبع، مکان کش کردن و حداکثر مدت طول عمر قبل از انقضا یافتن می شوند. در این مطلب با هم پارامترهای موجود در کش کنترل را با جزئیات بیشتری بررسی خواهیم کرد و با این هدر بیشتر آشنا خواهیم شد. هدر کش کنترل، به چند دستور العمل تقسیم می شود، که رایج ترین آنها در ادامه مورد بررسی قرار خواهند گرفت...

 

 

 

چند نمونه از هدرهای کش HTTP رایج

•    Cache-control: Max-Age
دستور العمل حداکثر طول عمر یا max-age برای درخواست تعیین می کند که نسخه کپی کش شده از منبع، تا چه زمانی می تواند فعال بوده و چه زمانی منقضی شود. پس از انقضا، مرورگر می بایست نسخه کپی خود از منبع را refresh کند (با ارسال یک درخواست به سرور).
برای مثال اگر کش کنترل شبیه به این باشد :
 cache-control: max-age=120
یعنی منبع برای 120 ثانیه معنبر بوده و پس از آن مرورگر باید نسخه جدیدتر را از سرور درخواست کند.
•    Cache-control: No-Cache
دستور العمل no-cache یعنی یک مرورگر می تواند یک درخواست را کش کند، اما به شرطی که ابتدا یک درخواست اعتبار سنجی برای سرور اصلی ارسال کند.
•    Cache-control: No-Store
دستور العمل no-store به این معناست که مرورگرها مجاز به کش کردن یک پاسخ نبوده و هر بار که درخواستی ارسال شود، باید پاسخ را از سرور اصلی دریافت کنند.
این تنظیمات معمولاً برای داده های حساس مثل اطلاعات بانکی افراد کاربرد دارد.
•    Cache-control: Public
دستور العمل پاسخ عمومی یا public response بیانگر این است که یک منبع می تواند با هر نوع کشی، کش شود.
•    Cache-control: Private
دستور العمل پاسخ خصوصی بیانگر این است که پاسخ مختص به کاربر خاصی بوده و می تواند تنها بر روی دستگاه کلاینت کش شود. برای مثال، یک پاسخ web page یا صفحه وبی که با دستور العمل private همراه شده باشد، می تواند توسط یک مرورگر دسکتاپ کش شود اما نمی تواند روی CDN یا شبکه توزیع محتوا کش شود.

سایر هدرهای کش HTTP 

در کنار Cache control ، هدرهای کش http قابل توجه عبارتند از:
•    Expires – این هدر یک زمان (روز، تاریخ و ساعت) برای انقضای یک منبع کش شده تعیین می کند. برای مثال، Expires: Sat, 13 May 2017 07:00:00 GMT  یعنی منبع کش شده در 13 می سال 2017 ساعت 7 GMT منقضی خواهد شد. این هدر انقضا، در زمان حضور Max-Age درون هدر کش کنترل، می تواند نادیده گرفته شود.
•    ETag – هدر پاسخی است که نسخه محتوای کش شده را بر اساس یک توکن مشخص می کند؛ این پارامتر به صورت رشته ای از کارکترهای عددی و حروف درون دو "" نمایان می شود. مثل :  "675af34563dc-tr34".
•    این مقدار پس از ویرایش منبع تغییر خواهد کرد. اگر توکن قبل از اینکه درخواست ایجاد شود، تغییر نکند، مرورگر از نسخه لوکال خود استفاده خواهد کرد.
•    Vary – هدری است که پاسخ هایی که باید با یک منبع کش شده ی خاص جفت شوند را مشخص می کند. در غیر این صورت پاسخ معتبر شناخته نخواهد شد. برای مثال، هدری نظیر Vary: Accept-Language, User-Agent بیانگر این است که برای هر ترکیب زبان و user agent بایدیک  نسخه کش شده  مجزا وجود داشته باشد.

شبکه توزیع محتوا (CDN) و Cache-Control

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

راهکار میزبان کلود

یکی از مدرن ترین و پیشرفته ترین سرویس های CDN در ایران، شبکه توزیع محتوای ابری میزبان کلود است که به شما کمک می کند تا از طریق یک داشبورد مدیریتی حرفه ای و کاربرپسند، سیاست های مورد نظرتان را برای سیستم کشینگ محتوای سایت خود در کسری از زمان تعیین کنید. 
سرویس CDN ابری میزبان کلود به شما این امکان را می دهد تا برای هدرهای HTTP  سیاست هایی نظیر Cache-control: Max-Age، expire date و غیره را به سادگی (از بخش تنظیمات کشینگ) تنظیم کنید.
پیشنهاد می کنیم حتما به صفحه CDN میزبان کلود مراجعه کرده و با ویژگی های پیشرفته و منحصر به فرد این سرویس بیشتر آشنا شوید. در صورت داشتن هر گونه سوال و یا نیاز به دریافت پشتیبانی در خصوص راه اندازی سرویس می توانید 24 ساعته با کارشناسان ما در تماس باشید.

جمع بندی

برای بهینه سازی سیستم کشینگ مرورگرها از سیاست ها و دستور العمل هایی در هدرهای HTTP کمک گرفته می شود. این دستور العمل ها به مرورگر کلاینت ها اطلاع می دهد که نسخه های کش یا کپی منابع ذخیره شده ی خود را تا چه زمانی معتبر نگه دارند و چه زمانی برای دریافت نسخه های جدیدتر به سرور اصلی درخواست دهند. این تنها یک نمونه از سیاست های موجود در هدرهای HTTP است؛ در این مطلب به چند مورد از رایج ترین دستور العمل ها اشاره شد؛ امیدواریم این مطلب نیز برای شما کاربران میزبان کلود مفید واقع شده باشد.
 
پیشنهاد ویژه

CDN ابری میزبان کلود

سرعت در بارگذاری و تحویل محتوای سایت

سرعت در بارگذاری و تحویل محتوای سایت

سرعت در بارگذاری و تحویل محتوای سایت

سرعت در بارگذاری و تحویل محتوای سایت

مشاهده پلانها
برچسب‌ها :
نویسنده مطلب Shahin Noei

نویسنده مطلب

منظور از هدر Cache Control چیست؟ 0 دیدگاه