پرش به مطلب اصلی

قوانین صفحات

پس از فعال‌سازی CDN، تنظیمات پیش‌فرض به‌صورت خودکار روی همه زیردامنه‌ها اعمال می‌شود؛ مانند کش شدن فایل‌های استاتیک.

Alt text

اگر نیاز دارید این رفتار پیش‌فرض را برای مسیر یا فایل خاصی تغییر دهید (مثلاً جلوگیری از کش شدن یک فایل یا نادیده گرفتن هدر خاص)، می‌توانید در بخش «قوانین صفحات» قانون دلخواه خود را تعریف کنید. برای مدیریت این بخش، از منو، وارد بخش «شبکه توزیع محتوا» شده و گزینه «قوانین صفحات» را انتخاب کنید.

Alt text

یک قانون پیش‌فرض در پنل وجود دارد که روی تمام درخواست‌های دامنه اصلی و زیردامنه‌ها اعمال می‌شود. این قانون شامل تنظیماتی مانند کش، فایروال و WAF است.

قوانین باید با فرمت scheme://hostname/path تعریف شوند، مثل: subdomain.test.com/somepage

هر درخواست فقط با اولین قانون هم‌خوان پردازش می‌شود، بنابراین تمام تنظیمات لازم باید در همان قانون قرار گیرد.

مثال: اگر سایت شما روی dev.test.com قرار دارد و قصد دارید کش مسیر /static/ را غیرفعال کنید، باید قانونی با مسیر /dev.test.com/static ایجاد کرده و کش را در آن غیرفعال کنید.

Alt text

در پایان، نمای کلی لیست قوانین صفحات شامل قانون جدید نمایش داده خواهد شد.

تعریف قوانین با استفاده از عبارات باقاعده (Regular Expression)​

برای تعریف دقیق‌تر مسیرها در قوانین صفحات، می‌توانید از علامت [ ] برای تطابق حروف یا اعداد استفاده کنید.

  • تطابق با حروف بزرگ و کوچک:

برای پوشش آدرس‌هایی مثل fa و Fa:

https://example.com/[fF]a/*
  • تطابق با اعداد:

برای پوشش آدرس‌هایی مانند users/12345:

https://example.com/users/[0-9]*
  • شروع مسیر با حروف خاص:

برای حروف کوچک:

https://example.com/[a-z]/*

برای حروف بزرگ:

https://example.com/[A-Z]/*

(برای هر گروه باید قانون جداگانه تعریف شود.)

  • قوانین حساس به حروف کوچک و بزرگ هستند.

  • بدون درج http یا https:

اگر ابتدای قانون را ننویسید، قانون برای هر دو پروتکل اعمال می‌شود.

مثال:

www.example.com/*
  • برای صفحه اصلی سایت:

اگر قانون باید فقط روی صفحه اصلی اعمال شود:

www.example.com/

امکانات موجود در قوانین صفحات​

با تعریف هر قانون، می‌توانید تنظیمات زیر را برای مسیرهای خاص سایت انجام دهید:

کش (Caching)

  • مشخص کردن زمان کش فایل‌ها در شبکه CDN

  • تعیین مدت نگهداری فایل‌ها در مرورگر

  • امکان کش کردن صفحات دارای کوکی (مناسب برای HTML)

شتاب‌دهی وب

  • فعال‌سازی شتاب‌دهی برای فایل‌های ثابت مثل CSS ،JS ،JPG ،PNG ،GIF

  • مناسب برای فایل‌هایی که می‌توان آن‌ها را فشرده کرد

تنظیمات امنیتی

  • فعال‌سازی WAF (دیوار آتش وب)

  • اعمال تنظیمات مقابله با حملات DDoS

  • محدودسازی دسترسی بر اساس کشور یا IP

تنظیمات پیشرفته

  • تعیین سرور مقصد متفاوت (کلاستر) برای یک مسیر خاص

  • مدیریت Headerها (ارسال یا مخفی‌سازی)

سایر تنظیمات

  • ریدایرکت با کدهای 301، 302، 307

  • لینک امن: محدود کردن دسترسی به URL با IP و زمان مشخص

پاک‌سازی Cache قوانین صفحات​

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

Alt text

برای این کار، ابتدا وارد پنل آبالون شوید و از بخش محصولات، به قسمت CDN و سپس «قوانین صفحات» بروید. در این بخش، با انتخاب گزینه «پاک‌سازی Cache» و تأیید آن، کش مربوط به همان قانون حذف خواهد شد. این قابلیت فقط در پلن پیشرفته و سازمانی فعال است و برای استفاده از آن لازم است سرویس خود را ارتقا دهید.

Redirect با استفاده از متغیرها​

در بخش قوانین صفحات آبالون، می‌توانید ریدایرکت کاربران از یک دامنه به دامنه دیگر را با کدهای ۳۰۱، ۳۰۲ یا ۳۰۷ انجام دهید. با کمک متغیرها، امکان ایجاد مسیرهای پویا و قابل انعطاف در آدرس مقصد فراهم شده است. این قابلیت برای مدیریت ساختار آدرس‌دهی یا هدایت دقیق مسیرها کاربرد دارد. برای تنظیم دقیق‌تر، می‌توانید از راهنمای ریدایرکت استفاده کنید.

تنظیم Timeout​

این تنظیم به شما اجازه می‌دهد بازه زمانی Timeout بین سرور لبه آبالون و سرور اصلی را مشخص کنید. سه نوع Timeout قابل تنظیم است:

  • Connection Timeout: مدت‌زمان برای برقراری اتصال

  • Read Timeout: مدت‌زمان انتظار برای دریافت پاسخ

  • Write Timeout: مدت‌زمان مجاز برای ارسال داده

Alt text

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

اعمال تنظیمات Cache از سمت سرور اصلی​

در زمان استفاده از CDN، پاسخ کاربران معمولاً از سرورهای کش میانی ارائه می‌شود، نه مستقیماً از سرور اصلی. برای کنترل بهتر نسخه‌های کش‌شده، می‌توانید برخی تنظیمات Cache را مستقیماً از سرور اصلی مشخص کنید.

با فعال‌سازی قابلیت Origin Cache Control، امکان کنترل موارد زیر از سمت سرور اصلی فراهم می‌شود:

  • مدت زمان نگهداری محتوا در کش

  • الزام به به‌روزرسانی یا revalidate شدن فایل‌ها

  • جلوگیری از کش شدن برخی فایل‌ها روی سرورهای لبه

این قابلیت به شما کمک می‌کند تا رفتار کش را دقیق‌تر کنترل کرده و به محتوای خود انعطاف بیشتری بدهید.

شیوه کار Origin Cache Control​

در حالت عادی، سرور لبه آبالون پس از دریافت پاسخ از سرور اصلی، محتوای دریافتی را طبق تنظیمات پیش‌فرض کش می‌کند. اما با فعال‌سازی قابلیت Origin Cache Control، سرور اصلی می‌تواند کنترل دقیق‌تری روی این فرآیند داشته باشد.

در این حالت، سرور اصلی در پاسخ HTTP، هدر Cache-Control را ارسال می‌کند. این هدر به سرورهای لبه دستور می‌دهد که:

  • چه نوع محتواهایی کش شوند

  • مدت زمان اعتبار کش چقدر باشد

  • چه درخواست‌هایی مشمول کش باشند یا نباشند

به این شکل، مدیریت رفتار کش از سمت سرور اصلی انجام می‌شود و هماهنگی بیشتری میان منابع و سیاست‌های کش‌گذاری ایجاد خواهد شد.

انواع پارامترهای Cache-Control​

هدر Cache-Control شامل دستوراتی است که مشخص می‌کنند یک محتوا چگونه، چه مدت و در کجا کش شود. این هدرها توسط سرور اصلی ارسال می‌شوند و سرورهای لبه آبالون آن‌ها را تفسیر می‌کنند.

در ادامه مهم‌ترین پارامترهای قابل استفاده آمده است:

  • max-age: مدت زمان اعتبار کش را بر حسب ثانیه تعیین می‌کند. پس از پایان این زمان، محتوا باید دوباره از سرور اصلی اعتبارسنجی شود.

  • public: محتوای پاسخ برای همه درخواست‌ها کش می‌شود، حتی اگر از نوع غیرقابل کش باشد.

  • private: کش فقط در مرورگر کاربر انجام می‌شود و سرورهای لبه آن را ذخیره نمی‌کنند.

  • no-cache: محتوا ذخیره می‌شود، اما برای هر بار استفاده باید اعتبارسنجی شود.

  • no-store: محتوا اصلاً ذخیره نمی‌شود. هر بار باید مستقیم از سرور اصلی دریافت شود.

  • min-uses: مشخص می‌کند پس از چند بار درخواست یک فایل، کش آغاز شود.

  • s-maxage: مقدار جداگانه‌ای از زمان اعتبار کش برای سرورهای میانی (CDN) تعریف می‌کند و جایگزین max-age می‌شود.

  • must-revalidate: هر بار قبل از استفاده از کش، اعتبار محتوا باید با سرور اصلی بررسی شود.

نمونه:

برای نمونه، اگر در هدر پاسخ HTTP پارامترهایی مانند موارد زیر وجود داشته باشند، سرورهای لبه متوجه می‌شوند که این محتوا باید به‌صورت سراسری روی تمام سرورها ذخیره شود و پس از گذشت ۳۶۰۰۰ ثانیه، برای اعتبارسنجی مجدد آن، درخواست جدیدی ارسال گردد.

Control-Cache: public, max-age=36000

فعال‌سازی Origin Cache Control​

برای فعال‌سازی کنترل کش از سمت سرور اصلی، وارد پنل آبالون شوید و سپس به «قوانین صفحات» بروید. سپس با تعریف یک قانون جدید برای کل دامنه یا مسیر خاص، می‌توانید ویژگی کنترل کش را فعال کنید.

Alt text

توجه داشته باشید این قابلیت فقط در پلن سازمانی فعال است و برای استفاده از آن باید پلن سرویس خود را ارتقا دهید.