help-header

تنظیمات قوانین صفحات در پنل CDN‌ آروان

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

حال چنان‌چه مایل باشید رفتار پیش‌فرض CDN را تغییر دهید (برای نمونه فایل خاصی Cache نشود یا فایروال برای نشانی خاصی اعمال شود)، نیاز است که در قسمت «قوانین صفحات» برای صفحه‌ی مورد نظر، قانون بسازید.

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

1-_2_.jpg

همان‌طور که در شکل مشخص است، یک قانون پیش‌فرض وجود دارد که تمامی درخواست‌های دامنه‌ی اصلی و Subdomainها با همین قانون هم‌خوان (Match) می‌شوند و طبق همین قانون تنظیمات Caching، WAF، Firewall و... روی درخواست‌های این دامنه اعمال می‌شود.

قانون‌ها باید با الگوی  <scheme>://<hostname>/<path> ساخته شوند، برای نمونه:

https://subdomain.test.com/somepage

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

حالا فرض کنید که یک وب‌سایت روی نشانی dev.test.com وجود دارد و شما می‌خواهید Caching را روی نشانی /static/ وب‌سایت غیرفعال کنید تا بتوانید تغییرات فایل‌های استاتیک را به‌شکل آنی مشاهده کنید.

برای این کار باید قانونی به‌شکل زیر بسازید:

 

2-_2_.jpg

توجه کنید که برای Wildcard، باید از * استفاده کرد تا هر درخواستی که با dev.test.com/static/ شروع شده باشد با این قانون هم‌خوان شود.

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

4.jpg

 

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

اگر قصد تطابق کاراکترهای خاص (حروف و اعداد) با یک قانون را دارید می‌توانید از کروشه [] استفاده کنید.

  • مثال ۱: تصور کنید هدف تعریف قانونی است که همزمان هردوی URLهای زیر را شامل شود:

https://www.example.com/fa

https://www.example.com/Fa

برای این منظور در بخش نشانی هنگام تعریف یک قانون جدید، قانونی به شکل زیر تعریف می‌شود:

https://example.com/[fF]a/*

  • مثال ۲: تصور کنید هدف تنظیم قانونی است که با URLای همانند زیر که در آن عدد به کار رفته مطابقت یابد:

https://example.com/users/2xxxx

برای این منظور از قانونی همانند زیر استفاده می‌شود:

https://example.com/users/[0-9]*

  • مثال ۳: تصور کنید هدف تعریف قانونی است که با تمام صفحاتی که با حروف کوچک در بازه‌ی a-z آغاز می‌شوند، مطابقت یابد برای این منظور می‌توان از قانونی همانند زیر استفاده کرد:

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

نکته: دقت داشته باشید که اگر همزمان با تعریف قانون بالا، قصد دارید تا تمام صفحاتی که با حروف بزرگ در بازه‌ی A-Z شروع می‌شوند نیز مطابقت یابند، باید قانون جدیدی برای این منظور علاوه بر قانون بالا تعریف کرده و داخل کروشه به جای a-z، عبارت A-Z را قرار دهید.

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

نکته: اگر در ابتدای قانونی http یا https قید نشود، قانون به‌شکل پیش‌فرض با هردوی URLهای http و https مطابقت می‌یابد. برای مثال:

www.example.com/*

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

www.example.com/

در قوانین صفحات، امکانات زیر وجود دارد:

  • تنظیمات Caching
    • مشخص کردن زمان Cache فایل‌ها در شبکه‌ی CDN
    • مشخص کردن زمان Cache در Browser
    • Cache کردن صفحات دارای set cookie (مناسب برای صفحات HTML)
  • شتاب‌دهی وب

چنان‌چه محتوای وب‌سایت نیاز به شتاب‌دهی داشته باشد، در این قسمت می‌توانید شتاب‌دهی را فعال کنید.

توجه کنید که امکان فعال‌سازی شتاب‌دهی فقط برای فایل‌های Static مانند css، js، jpg، png و gif وجود دارد (محتواهایی که امکان خلاصه‌سازی و minify کردن آن‌ها وجود دارد)

  • تنظیمات امنیتی
    • دیواره آتش وب: چنان‌چه این قسمت فعال شود، تنظیماتی که در قسمت WAF انجام شده است روی این قانون نیز اعمال می‌شود.
    • وضعیت DDoS: با فعال کردن این گزینه، این قانون از تنظیمات DDoS کلی پیروی خواهد کرد.
    • تنظیمات فایروال: شما می‌توانید به‌ازای هر قانون، سطح دسترسی را به‌ازای کشور یا IP تعیین کنید.
  • تنظیمات Proxy
    • انتخاب Origin: با استفاده از این امکان، می‌توانید برای یک قانون خاص از Origin متفاوتی از آن‌چه در DNS تعریف شده است، استفاده کنید. (برای این کار نیاز است دست کم یک Origin در قسمت تنظیمات Origin وجود داشته باشد).
    • تنظیمات Header: برخی موارد نیاز است Header خاصی به سرور شما ارسال شود (مانند Host header). هم‌چنین در برخی موارد، نیاز است به کاربر Header جدیدی ارسال شود (مانند allow-access-origin) یا Header که سرور شما ارسال کرده از کاربر مخفی بماند. تمامی این موارد را می‌توانید در بخش تنظیمات Header اعمال کنید.
  • سایر تنظیمات
    • Redirect: شما می‌توانید با status codeهای ۳۰۱، ۳۰۲ و ۳۰۷ درخواست‌های مورد نظر را Redirect کنید.
    • لینک امن: چنان‌چه دسترسی برای یک دامنه یا URL خاص باید برای کاربر با IP خاص و زمان خاص محدود شود، می‌توانید از این قابلیت استفاده کنید.

 

 پاک کردن Cache قوانین صفحات

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

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

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

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

 

تنظیمات Timeout

به کمک تنظیمات Timeout که به‌شکل یک قانون قابل تعریف است، می‌توانید مدت زمانی که برای دریافت Timeout در ارتباط بین سرورهای لبه‌ی CDN ابر آروان و سرور اصلی به‌شکل پیش‌فرض وجود دارد را تغییر دهید. با استفاده از این قابلیت، امکان تغییر بازه‌ی دریافت پیام Timeout در سه زمان مختلف را خواهید داشت:

  • اتصال سرورهای لبه‌ی CDN به سرور اصلی‌ وب‌سایت (Connection Timeout)
  • انتظار برای دریافت پاسخ به درخواست ارسال‌شده برای سرور اصلی (Read Timeout)
  • نوشتن اطلاعات در سرور اصلی (Write Timeout)

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

1.JPG

در نظر داشته باشید که قابلیت تنظیمات Timeout در پلن حرفه‌ای در دسترس است و برای استفاده از آن باید این پلن روی حساب کاربری شما فعال باشد.

 

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

در استفاده از شبکه توزیع محتوا، با توجه به قرار داشتن تعدادی سرور Cache‌ میان مرورگر درخواست‌دهنده و سرور اصلی وب‌سایت، پاسخ به درخواست‌های کاربران به‌وسیله‌ی این سرورها انجام می‌گیرد. به همین دلیل، ممکن است نیاز داشته باشید تنظیمات مربوط به Caching را از سمت سرور اصلی وب‌سایت مشخص کنید تا نسخه‌های محتوای ارایه شده به کاربر به‌شکل بهتری مدیریت شوند. به عنوان مثال، مدت زمان به‌روزرسانی کش یا Revalidate شدن یک فایل را تغییر دهید یا لازم باشد تعدادی از فایل‌های قرار داده شده روی سرور اصلی، روی سرورهای لبه‌ی CDN کش نشوند. با استفاده از قابلیت Origin Cache Control محصول CDN ابر آروان، می‌توانید بخش مهمی از تنظیمات مربوط به Cache شدن محتوا را از سرور اصلی وب‌سایت خود مدیریت کنید و به این شکل، انعطاف بیش‌تری روی محتوای خود داشته باشید. 

 
 شیوه‌ کار قابلیت Origin Cache Control 

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

 

انواع هدر Cache-control 

اطلاعات قرار گرفته در هدر Cache-control که به‌وسیله‌ی قابلیت Origin Cache Control قابل درک هستند، پارامترهای مختلفی را نشان خواهند داد. وجود پارامترهای زیر نشان‌دهنده‌ی شیوه‌ی Cache شدن منابع خواهد بود: 
 

  • Max-age: اجازه خواهد داد که زمان انقضای Cache ار سمت سرور اصلی مشخص شود. به این ترتیب، پس از اتمام زمان مشخص شده، که به ثانیه‌ است، سرورهای لبه مجددن درخواست Validate شدن Cache را ارسال خواهند کرد. 
  • Public: با وجود این پارامتر در هدر یک پاسخ، محتوا بدون توجه به دستورهای قبلی برای همه‌ی درخواست‌ها کش می‌شود، حتا اگر محتوا از نوع غیرقابل کش باشد. 
  • Private: اگر این پارامتر در هدر وجود داشته باشد، محتوا به‌وسیله‌ی سرورهای لبه کش نخواهد شد و مقصد پاسخ، یک درخواست مشخص است. به این ترتیب، عمل کش شدن تنها در مرورگر اتفاق خواهد افتاد. 
  • No-cache: محتوا روی سرورها ذخیره می‌شود، اما به ازای هر درخواست، باید مراحل Validate شدن به‌شکل کامل طی شود. 
  • No-store: محتوا در هیچ نقطه‌ای کش نخواهد شد و برای هر درخواست باید مراحل ارسال و دریافت محتوا به‌شکل کامل از سوی درخواست‌دهنده به سمت سرور اصلی و برعکس طی شود. 
  • Min-uses: مشخص می‌کند که پس از تعداد مشخصی درخواست برای یک محتوا، سرورهای لبه آن را کش کنند. 
  • S-max: سرورهای لبه، زمان انقضای مشخص‌شده به‌وسیله‌ی max-age را به زمان مشخص شده در این پارامتر تغییر می‌دهند. 
  • Must-revalidate: محتوایی که این پارامتر را در هدر پاسخ خود دارد، باید به ازای هر درخواست یک بار از طریق سرور اصلی Validate شود. 

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

Control-Cache: public, max-age=36000 

  

شیوه فعال‌سازی قابلیت Origin Cache Control 

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