«قوانین مسیر» قلب تپنده پیکربندی CDN شما در پنل ستون است. با تعریف هر قانون، شما مشخص می‌کنید که درخواست‌های ورودی بر اساس هاست (Host) و مسیر (Path) به کدام آپ‌استریم (Upstream) هدایت شوند و چه تنظیمات و بهینه‌سازی‌هایی روی آن‌ها اعمال گردد.

شما می‌توانید برای مسیرهای مختلف، قوانین جداگانه‌ای تعریف کنید. برای مثال، یک قانون برای کش کردن تصاویر در مسیر /images/* و یک قانون دیگر برای عدم کش محتوای پویا در مسیر /api/* تنظیم کنید.

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

ایجاد و ویرایش یک قانون مسیر

صفحه ساخت یا ویرایش قانون مسیر از دو بخش اصلی تشکیل شده است:

  1. تعریف شرط تطابق: در این بخش، مشخص می‌کنید که قانون بر روی کدام دسته از درخواست‌ها اعمال شود.

  2. پیکربندی تنظیمات: در این بخش، مجموعه‌ای از قابلیت‌ها مانند کش، بازنویسی مسیر، تنظیمات امنیتی و… را برای درخواست‌های منطبق شده، فعال و پیکربندی می‌کنید.

۱. تعریف شرط تطابق

  • مسیر مورد نظر (Path): مسیری که می‌خواهید این قانون برای آن اعمال شود را وارد کنید. برای پوشش دادن تمام درخواست‌ها از /* استفاده کنید. این فیلد از الگوهای GLOB پشتیبانی می‌کند.

  • هاست (Host): می‌توانید قانون را به یک یا چند هاست (ساب‌دامین) خاص محدود کنید. برای مثال cdn.example.com یا *.example.com. اگر این فیلد خالی بماند، قانون برای تمام هاست‌های متصل به این سرویس اعمال می‌شود.

  • آپ‌استریم (Upstream): از این منو، گروه سرورهای اصلی (آپ‌استریم) که باید پاسخگوی درخواست‌های این مسیر باشند را انتخاب کنید.

۲. پیکربندی تنظیمات

پس از تعریف شرط، می‌توانید یک یا چند مورد از تنظیمات زیر را برای قانون خود فعال کنید:

تنظیمات Cache

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

پس از فعال‌سازی، می‌توانید پارامترهای دقیقی را تنظیم کنید، از جمله:

  • نوع کش: استاندارد (با در نظر گرفتن Query String) یا نادیده گرفتن Query String.

  • مدت زمان کش (TTL): تعیین زمان ماندگاری محتوا در کش مرورگر کاربر (Browser TTL) و در سرورهای CDN (Edge TTL).

  • تنظیمات پیشرفته: امکاناتی مانند کش پاسخ‌های ناموفق و مدیریت هدر cache-control.

بازنویسی مسیر (Rewrite)

این قابلیت به شما اجازه می‌دهد آدرس URL درخواست را قبل از ارسال به سرور آپ‌استریم تغییر دهید. برای مثال، می‌توانید تمام درخواست‌های ورودی به مسیر /app/* را به مسیر / در سرور اصلی خود هدایت کنید.

  • پیشوند مسیر مبدأ: بخشی از مسیر ورودی که می‌خواهید بازنویسی شود.

  • مسیر مقصد: مسیر جدیدی که در سرور آپ‌استریم جایگزین پیشوند مبدأ می‌شود.

ویرایش تصویر (Image Editing)

این قابلیت به شما امکان می‌دهد تصاویر را به صورت دینامیک و از طریق پارامترهای URL بهینه‌سازی کنید. با فعال کردن این ویژگی، می‌توانید بدون تغییر آدرس اصلی تصویر، تغییراتی مانند تغییر فرمت (مثلاً به WebP) و یا کیفیت آن را اعمال کنید.

تنظیمات CORS (Cross-Origin Resource Sharing)

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

این ویژگی به شما امکان می‌دهد لینک‌های دسترسی به محتوا را به صورت مدت‌دار و امن تولید کنید. این قابلیت از دسترسی غیرمجاز و به اشتراک‌گذاری بی‌رویه لینک‌ها جلوگیری می‌کند.

سفارشی‌سازی هدرها (Header Customization)

شما می‌توانید هدرهای HTTP را در دو مرحله از چرخه درخواست تغییر دهید:

  • هدر آپ‌استریم (Upstream Headers): هدرهایی که از CDN به سمت سرور اصلی شما ارسال می‌شوند. می‌توانید هدرهایی مانند X-User-ID را اضافه کرده یا هدرهای موجود را حذف و ویرایش کنید.

  • هدر داون‌استریم (Downstream Headers): هدرهایی که در پاسخ نهایی از CDN برای کاربر (مرورگر) ارسال می‌شوند. این بخش برای افزودن هدرهای امنیتی مانند Content-Security-Policy یا هدرهای سفارشی دیگر کاربرد دارد.


هدرهای اختصاصی ستون

شبکه توزیع محتوای ستون به‌صورت خودکار هدرهایی را برای ارائه اطلاعات بیشتر به درخواست‌ها و پاسخ‌ها اضافه می‌کند:

  • هدرهای ارسالی به آپ‌استریم:

    • X-Real-IP / X-Forwarded-For: حاوی آدرس IP واقعی کاربر.

    • X-Forwarded-Host: نام هاست درخواستی توسط کاربر.

    • X-Forwarded-Proto: پروتکل درخواستی کاربر (http یا https).

  • هدرهای ارسالی به کاربر:

    • x-zrk-cs: وضعیت کش را مشخص می‌کند (مانند HIT, MISS, BYPASS).

    • x-zrk-sn: نام سرور لبه‌ای که پاسخ را ارسال کرده است.

    • server: همیشه دارای مقدار Sotoon است.

پس از اعمال تمام تنظیمات مورد نظر، روی دکمه «ویرایش قانون مسیر» یا «افزودن قانون مسیر» کلیک کنید تا تغییرات شما ذخیره شود.