9120910278 call

سرویس قوانین سفارشی اَبر دِراک

محمدحسین فرشاد
در تاریخ: ۲ شهریور، ۱۳۹۸

اَبر دِراک از سرویس قوانین سفارشی خود رونمایی کرد.

سرویس قوانین سفارشی اَبر دِراک بر روی پنل اَبر دِراک رونمایی شد. پیش‌تر نیز سرویس مقابله با حملات DDoS اَبر دِراک رونمایی شده بود.

اما امروز طی خبری سرویس قوانین سفارشی اَبر دِراک در دسترس عموم قرار گرفت. این سرویس امکان مدیریت محتوای وب به صورت «صفحه به صفحه» را در اختیار کاربران قرار می‌دهد. مدیریت صفحه به صفحه به این معنی است که کاربر بتواند نحوه بارگذاری، Caching، سطح امنیت و … را به ازای هر صفحه از وب‌سایت به صورت کاملا جداگانه انجام دهد. 

بسیاری از امکانات این سرویس ازدغدغه‌های همیشگی کاربران بوده، چرا که گاهی انجام این فرآیندها توسط شرکت‌های ارائه‌دهنده خدمات میزبانی با دریافت هزینه از سوی آنان همراه است.

قوانین سفارشی یک مجموعه ابزار قدرتمند جدید در پنل کاربری دِراک است که به کاربر امکان کنترل صفحه به صفحه را در سایت خود می‌دهد. این سرویس برای بسیاری از کاربرانی که با مدیریت موارد امنیتی از جمله HTACCESS زیاد سروکار دارند جذاب است، چرا که تمام نیازهای آن‌ها را برآورده خواهد کرد.

قوانین سفارشی در پنل

قسمت قوانین سفارشی اَبر دِراک در پایین قسمت Navigator منوی تنظیمات قابل دسترسی است.

اولین قدم در استفاده از Page Rules تعریف الگویی است که هنگام شروع استفاده از قوانین سفارشی انجام می‌دهیم. این الگوها در ساده‌ترین حالت می‌توانند تنها یک URL ساده باشند و یا عبارتی پیچیده شامل Wildcard های مختلف. در ساده‌ترین حالت می‌توانیم یک زیر دامنه یا Path اضافه کنیم و Caching را برای آن غیرفعال و یا فعال کنیم. 

این کار را می‌توان به ازای تک‌تک آدرس‌ها و یا مجموعه‌ای از آدرس‌ها (Wildcard) انجام داد.

Custom Rules - Add Record

سطح Cache:

با استفاده از قوانین سفارشی می‌توان به ازای هر صفحه یا URL خاص سطح Cache را انجام داد. 

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

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

  • ایجاد دایرکتوری مخصوص برای محتوای استاتیک (مثلا پوشه‌ی محتوای عکس‌ها یا فیلم‌ها)
example.com/static/* [/static/ subdirectory for static pages]
  • اضافه کردن یک پسوند منحصر به فرد در انتهای آدرس صفحات استاتیک
example.com/*.shtml [.shtml file extension to signify HTML that is static]
  • اضافه کردن یک پارامتر پرس و جو (Query String) برای علامت‌گذاری به عنوان محتوای استاتیک باشد
example.com/*?*static=true* [adding static=true query parameter]

این‌ها نمونه‌هایی از الگوهایی بودند که نیاز داریم تنها آن‌ها Cache شوند. گاهی اوقات مسیرهایی هستند که نیاز هست به صورت خاص Cache نشوند. مثلا زمانی که می‌خواهیم مطمئن شویم که صفحاتی همچون صفحات مدیریتی Cache نمی‌شوند. مانند:

example.com/wp-admin

در صورت لزوم، می‌توان چندین قانون ایجاد کرد تا به تنظیمات مورد نظر خود از سطح Cache برسیم.

سطح امنیت صفحات:

امکان تعیین سطح امنیت متفاوت برای صفحات متفاوت امکان‌پذیر شده است. از اصلی‌ترین خدمات CDN مقابله با حملات DDoS در سطوح مختلف است. بسیاری از سرویس‌های توزیع محتوا این خدمت را ارائه می‌دهند. مشکل اصلی در این مقابله فعال‌سازی قابلیت Under Attack برای تمامی صفحات وب‌سایت است، در حالی که ممکن است تنها یک صفحه یا مجموعه‌ای از صفحات تحت حمله قرار گرفته باشند نه تمام وب‌سایت. در پنل قوانین سفارشی می‌توان این مجموعه از صفحات را مشخص کرد و تنها برای آن‌ها حالت Under Attack یا تحت حمله را فعال کرد. این موضوع باعث عدم تغییر تجربه کاربر در هنگام استفاده از دیگر صفحات وب‌سایت و کند شدن بارگذاری برای عبور از صفحه چالشی خواهد شد. برای مثال زمانی که صفحه admin تحت حمله Brute Force قرار گرفته باشد.

شبکه:

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

تغییر مسیر URL:

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

 مثلا فرض کنید که صاحب یک سایت و دو دامنه هستید و می‌خواهید هر دو دامنه شما به یک سایت وارد شوند. مثلا دامنه اصلی شما https://mydomain.com هست  و می‌خواهید همزمان دامنه دیگر شما (https://mydomain.org) نیز به دامنه اصلی شما تغییر مسیر دهد. 

قابلیت ویژه اَبر دِراک عدم تغییر Query Stringها در زمان تغییر مسیر دامنه است. مانند مثال زیر:

mydomain.com/*?*query=true*

به

mydomain.org/*?*query=true* 

برای این کار کافی است URL دامنه دوم یا mydomain.org، در قسمت تغییر مسیر قوانین سفارشی به دامنه اصلی ارجاع دهید

این تغییر مسیر با برگرداندن کد وضعیت (یا همان Status Code) ۳۰۱، ۳۰۲ و ۳۰۷ برای سرور اصلی اتفاق خواهد افتاد و آمارهای مرتبط با آن در قسمت تجزیه و تحلیل داشبورد مدیریتی قابل دسترس خواهد بود کدهای تغییر مسیر عموما کاربردهای متفاوتی دارند:

۳۰۱:

به معنی تغییر مسیر دائمی یک صفحه به یک صفحه دیگر است. به این صورت که تقریبا Ranking Power یک صفحه در موتورهای جستجو به صفحه مقصد منتقل می‌گردد. 

۳۰۲:

کد ۳۰۲ در نسخه HTTP 1.0  به معنی انتقال موقت صفحه به صفحه دیگر بود که در نسخه HTTP 1.1 به یافت شد تغییر پیدا کرد.

۳۰۷:

بعد از تغییر مفهوم انتقال موقت از کد ۳۰۲ در HTTP 1.1 کد ۳۰۷ برای انتقال موقت جایگزین آن گردید.

Custom Rules - Header
SEO و کدهای تغییر مسیر:

موتورهای جستجو زمانی که با یک کد ۳۰۱ برای تغییر مسیر مواجه می‌شوند محتوای صفحه جدید را به عنوان محتوای URL اولیه در نظر می‌گیرند. و Ranking Power آن را برای URL اولیه در نظر می‌گیرد. مثال کاربردی این کار تغییر مسیر صفحه www دامنه (www.example.com) به example.com بدون تغییر در رنک جستجوی موتورهای جستجو همچون گوگل برای www نسبت به صفحه اصلی است. پیاده‌سازی این کار به راحتی در قسمت قوانین سفارشی پنل دِراک صورت می‌پذیرد.  

Headerها:

منظور از Headerها پیام‌هایی هستند که در ابتدای پاسخ‌های ارسالی در پروتکل HTTP یا HTTPS برای درخواست‌دهنده ارسال می‌شوند. دِراک قابلیت انجام چندین کار بر روی Headerهای ارسالی به کاربران نهائی را برای وب‌سایت‌ها ایجاد می‌کند. Headerهایی که از سمت سرور اصلی به سمت کاربر نهایی ارسال می‌شوند را می‌توان پنهان کرد و از بسته‌ ارسالی حذف نمود. علاوه بر این می‌توان Headerهای دیگری برای مصارف دیگر (مانند استفاده در APIها) تنظیم کرد و در بسته ارسالی قرار داد و برای کاربر نهایی ارسال کرد.

نحوه اعمال قوانین:

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

عملکرد بر اساس اولویت:

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

با بالا و پایین کردن تک تک قانون‌ها می‌توان اولویت آن‌ها را تغییر داد. البته باید به این نکته توجه کرد که این تغییر اولویت ممکن است باعث ایجاد تغییرات در نحوه عملکرد وب‌سایت گردد.

سرعت انتشار قوانین:

قوانین نوشته شده به‌وسیله کاربر پس از کامپایل در کسری از ثانیه بر روی شبکه سرورهای اَبر دِراک منتشر و اعمال می‌شوند. تمامی سرورهای لبه اَبر دِراک در زمانی کمتر از دهم ثانیه از قوانین اعمال شده توسط یک کاربر اطلاع پیدا کرده و آن را بر روی تنظیمات خود اجرا می‌کنند. 


سرویس قوانین سفارشی اکنون آماده‌ی استفاده کاربران می‌باشد و هر کاربر می‌تواند به صورت رایگان ۱۰ قانون سفارشی بر روی هر کدام از دامنه‌های خود تنظیم کند.