تنظیم رفتار کش (Cache)
در بخش لوکیشن پس از وارد کردن مسیر مورد نظر، میتوانید به تب مربوط به cache رفته و رفتار cache را پیکربندی کنید.
ابتدا برای هرمسیر باید «نوع Cache» مشخص شود، «نوع Cache» در اینجا تعیینکنندهی رفتار کش است. در این قسمت میتوانید یکی از سه سطح «استاندارد»، «Bypass» و یا «نادیده گرفتن Query String» را انتخاب کنید.
استاندارد (Standard): در این حالت، لینک با در نظر گرفتن قسمت Query String کش میشود. به این معنی است که دو لینک زیر با یکدیگر متفاوت در نظر گرفته شده و جداگانه کش خواهند شد.
http://example.com/over/there
http://example.com/over/there?name=ferret
نادیده گرفتن Query String: یک Query String قسمتی از یک URL است، که مقادیر را به پارامترها اختصاص میدهد. Query String معمولا شامل فیلدهایی است که به یک URL پایه اضافه میشود. برای مثال در URL زیر، Query String بهصورت Bold مشخص شده است.
http://example.com/over/there?name=ferret
مانند حالت قبل با این تفاوت که Query String در کش کردن لینک لحاظ نمیشود. به این معنی که دو لینک زیر با یکدیگر متفاوت نبوده و در ریکوئستهای حاوی دو URL زیر Query String نادیده گرفته میشود.
http://example.com/over/there
http://example.com/over/there?name=ferret
Bypass: در این حالت لینکهای مربوط به این Location در کش ذخیره نمیشود و مستقیما به سرور مبدا مرتبط هدایت میشوند.
در قسمت بعدی در صورتی که گزینهی «نادیده گرفتن Upstream TTL» را فعال کرده باشید، میتوانید تنظیمات را در پنل ستون پیکربندی کنید. درغیر این صورت تنظیمات کش از روی هدر Cache-Control که در پاسخ سرور اصلی شما قرار دارد، اعمال میشود.
ویژگی immutable: در صورت فعال بودن این ویژگی، پاسخ ارسال شده دیگر تغییری نخواهد کرد. یعنی اگر اطلاعات روی سرور مبدا منقضی نشده باشند، سرور همان پاسخ قبلی را بدون تغییر نمایش می دهد. پس حتی اگر کاربران، صفحه را بهروزرسانی کنند دیگر نیازی به ارسال درخواست برای کنترل تغییرات یا بهروزرسانیها از سمت کلاینت وجود ندارد. با فعال کردن این گزینه میتوانید ویژگی immutable را به هدر cache-control اضافه کنید. این ویژگی به طور پیشفرض غیرفعال است. در صورت نیاز به فعالسازی آن باید این گزینه را انتخاب کنید.
مدت زمان کش در کلاینت یا Browser TTL: این عدد مقدار زمانی که درخواست در سمت مرورگر (و یا هر کلاینت دیگری) باید کش شود را برحسب دقیقه مشخص میکند.
مدت زمان کش در سرور CDN یا EdgeTTL: این عدد مقدار زمانی که درخواست در سرورهای CDN ذخیره میشود را برحسب دقیقه، مشخص میکند.
مدت زمان کش درخواستهای ناموفق یا Non-Success TTL: این عدد تعداد دقایقی که میتوان درخواستهایی که منجر به پاسخ 4xx از سرور اصلی شدهاند، کش کرد را مشخص میکند.
مدت زمان کش درخواستهای منقضی شده یا Stale TTL: این عدد تعداد دقایقی را که میتوان پس از منقضی شدن کش، کماکان پاسخهای منقضی شده را به کاربر بازگرداند، تنظیم کند.
کش خصوصی یا Private: توجه داشته باشید که در صورت فعال بودن این گزینه، سرور CDN چیزی را کش نمیکند، ولی میتوان BrowserTTL را برای کش کلاینت تنظیم کرد. این مورد برای کش کردن دادههای مخصوص کاربر استفاده میشود.
کش ستون از Content Typeهای زیر پشتیبانی میکند: