مثال‌هایی برای نحوه استفاده از قوانین سفارشی

زهرا رحمانیان
در تاریخ: ۲۹ مرداد، ۱۳۹۸

در این مقاله نحوه تنظیم قوانین سفارشی برای چند مورد استفاده بیان می‌شود. دقت کنید که برای هر URL فقط یک قانون اعمال می‌شود. پس در هر مثال، در صورتی که پیش‌تر قانونی با آدرس مشخص‌شده ساخته‌اید، تغییرات را روی همان قانون اعمال کنید.

۱. Cache نشدن یک آدرس خاص (مثلا مسیرهای مربوط به مدیریت WordPress)

اگر شما وب‌سایت خود را با استفاده از WordPress راه‌اندازی نموده‌اید، لازم است که بخش مدیریت آن Cache نشود. برای این کار، در قسمت قوانین سفارشی ، یک قانون را به ترتیب زیر بسازید.

در نوار بالا، در قسمت Path، عبارت wp-*/* را وارد کنید. این بدان معناست که این قانون برای هر URL از بخش مدیریت WordPress وب‌سایت شما اعمال می‌شود که شامل wp-admin و wp-login و wp-admin/edit.php و … است.

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

7-senario-01

۲. تغییر امنیت یک آدرس خاص

ممکن است قسمتی از وب‌سایت شما تحت حمله باشد. برای مثال این حمله از طریق آدرس‌های مربوط به api.yourdomain.ir/ می‌باشد. در صورتی که شما سطح امنیت وب‌سایت خود را به حالت تحت حمله تغییر دهید، تمام کاربران شما با صفحه چالش روبرو می‌شوند. اما شما می‌توانید این سطح را فقط برای همان قسمتی که تحت حمله قرار گرفته‌است اعمال کنید. در این صورت کاربران شما به راحتی به وب‌سایت دسترسی دارند و تنها کاربران آدرس‌های مربوط به API، با صفحه‌ی چالش روبرو می‌شوند.

بدین منظور در قسمت قوانین سفارشی ، یک قانون را به ترتیب زیر بسازید.

در نوار بالا، در قسمت Subdomain، عبارت api را وارد کنید. این بدان معناست که این قانون برای هر URL از بخش API وب‌سایت شما اعمال می‌شود.

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

پس از انجام تغییرات، قانون را ذخیره کنید.

7-senario-02

۳. تغییر سطح دسترسی کاربران به یک آدرس خاص (مثلا مسیرهای مربوط به مدیریت WordPress)

اگر شما وب‌سایت خود را با استفاده از WordPress راه‌اندازی نموده‌اید، ممکن است بخواهید که بخش مدیریت آن را ایمن‌تر کنید. به طوری که تنها برای کاربرانی با IPهای خاص قابل دسترسی باشد. این مورد در حالتی که شرکت شما از IP مشخصی استفاده می‌کند، بسیار کاربرد دارد. برای این کار، در قسمت قوانین سفارشی ، یک قانون را به ترتیب زیر بسازید.

در نوار بالا، در قسمت Path، عبارت wp-*/* را وارد کنید. این بدان معناست که این قانون برای هر URL از بخش مدیریت WordPress وب‌سایت شما اعمال می‌شود که شامل wp-admin و wp-login و wp-admin/edit.php و … است

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

7-senario-03-1

در جدول، روی دکمه‌ی افزودن رکورد جدید کلیک کنید. اکنون از تب دیوار آتش، قانون را بر اساس IP انتخاب کرده و IP مورد نظر را بنویسید. سیاست Whitelist را انتخاب کنید و رکورد را ذخیره کنید. شما می‌توانید یک یا چند رکورد را بدین صورت اضافه کنید.

7-senario-03-2

توجه کنید که می‌توانید این قانون را بر اساس کشور و یا ASN نیز تنظیم کنید. مثلا در صورتی که مایلید کاربرانتان فقط از داخل کشور و یا کشورهای خاص دسترسی داشته باشند، این مورد کاربرد دارد.

پس از انجام تغییرات، قانون را ذخیره کنید.

۴. تغییر مسیر (Redirect)

کاربران اینترنت، در بعضی موارد به دلخواه آدرس‌های اینترنتی را به صورت آدرس اصلی و یا با www وارد می‌کنند. از این رو تغییر مسیر آدرس زیردامنه‌ی www به آدرس اصلی دامنه شما و بالعکس کاربرد زیادی دارد. برای این تغییر مسیر، در قسمت قوانین سفارشی ، یک قانون را به ترتیب زیر بسازید.

در نوار بالا، در قسمت Subdomain، عبارت www را بنویسید و Path را خالی بگذارید. دقت کنید که رکورد A مربوط به www را در قسمت DNS فعال کرده باشید تا این قانون فعال شود.

در قسمت پایین، تب تغییر مسیر را انتخاب کنید. دکمه‌ی مربوط به تغییر مسیر را بزنید تا فعال شود. در قسمت Status Code، گزینه ۳۰۱ را انتخاب کنید. این کد به معنای تغییر مسیر دائمی به آدرس مربوطه است که برای این مورد کاربرد دارد؛ اما شما می‌توانید کد دلخواه خود را در این قسمت انتخاب کنید.

کاربران شما ممکن است در ادامه‌ی آدرس وب‌سایت، مسیر مشخصی را وارد کرده باشند. پس در تغییر مسیر باید کل آدرس به آدرس مورد نظر تبدیل شود. برای مثال فرض کنید یک کاربر وبسایت شما آدرس www.yourdomain.ir/blog/?search=CDN را وارد کرده باشد. این آدرس باید به صورت کامل به yourdomain.ir/blog/?search=CDN تغییر مسیر یابد وگرنه محتوای درستی به کاربر نمایش داده نمی‌شود. پس دکمه‌ی مربوط به تنظیمات تغییر مسیر را بزنید تا فعال شود. هر دو گزینه را فعال کنید تا آدرس به طور کامل و با Query String مربوطه تغییر مسیر یابد.

پس از انجام تغییرات، قانون را ذخیره کنید.

7-senario-04

۵. اعمال محدودیت تعداد درخواست برای یک آدرس خاص

ممکن است شما به دلایل امنیتی و یا دلایل دیگر مایل باشید محدودیتی را برای درخواست از یک آدرس خاص اعمال کنید. برای مثال آدرس‌های مربوط به api.yourdomain.ir/. بدین منظور در قسمت قوانین سفارشی ، یک قانون را به ترتیب زیر بسازید.

در نوار بالا، در قسمت Subdomain، عبارت api را وارد کنید. این بدان معناست که این قانون برای هر URL از بخش API وب‌سایت شما اعمال می‌شود.

Custom rules: 7-senario-05-1

در قسمت پایین، تب شبکه را انتخاب کنید. دکمه‌ی مربوط به مدیریت درخواست‌ها را بزنید تا فعال شود. ظرفیت درخواست‌ها را نامحدود و محدودیت تعداد درخواست بر IP را روی 1000 درخواست بر دقیقه تنظیم کنید. با این کار، اختلالی در درخواست‌های کاربران عادی شما به وجود نمی‌آید اما دربردارنده‌ی مزایای امنیتی است.

پس از انجام تغییرات، قانون را ذخیره کنید.

Custom rules: 7-senario-05-2

۶. Cacheکردن سفارشی برای فایل‌های خاص از یک آدرس خاص

اگر شما وب‌سایت خود را با استفاده از WordPress راه‌اندازی نموده‌اید، فایل‌های عکس و فیلم بخش مربوط به محتوای رسانه‌ای (wp-content) معمولا ثابت است. پس می‌توانید آن‌ها را همیشه Cache کنید. بدین منظور در قسمت قوانین سفارشی ، یک قانون را به ترتیب زیر بسازید.

در نوار بالا، در قسمت Path، عبارت wp-content/* را وارد کنید. این بدان معناست که این قانون برای هر URL از بخش محتوای WordPress وب‌سایت شما اعمال می‌شود.

در قسمت پایین، تب Caching را انتخاب کنید. دکمه‌ی مربوط به سطح Cache را بزنید تا فعال شود. گزینه‌ی Caching سفارشی را انتخاب کنید. سپس نمایش تنظیمات پیشرفته را بزنید تا تنظیمات مربوط به Cacheکردن فایل‌های ایستا را ببینید. در فیلد فرمت فایل، فرمت‌های موردنظر از قبیل jpg و png و mp4 و mp3 و … را وارد کنید.

7-senario-06-1

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

پس از انجام تغییرات، قانون را ذخیره کنید. توجه کنید که رکورد مربوط به این قانون از رکورد مربوط به قانونی که برای wp-*/* تنظیم کرده اید، اولویت بیشتری دارد. پس در جدول باید بالاتر قرار گیرد. در غیر این صورت اعمال نمی‌شود. شما می‌توانید ترتیب رکوردها را عوض کنید تا به ترتیب دلخواه برسید.

7-senario-06-2

۷. Cacheکردن کامل برای یک آدرس خاص

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

قانون سفارشی اول (بلاگ)

فرض کنید که آدرس صفحه‌ی بلاگ شما به صورت yourdomain.ir/blog می‌باشد. در نوار بالا، در قسمت Path، عبارت blog/* را وارد کنید. این بدان معناست که این قانون برای هر URL از بلاگ وب‌سایت شما اعمال می‌شود.

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

7-senario-07-1
قانون سفارشی دوم (کل وب‌سایت)

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

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

7-senario-07-2

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

7-senario-07-3