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

آشنایی با Ultimate Multisite

Ultimate Multisite یک پلاگین WordPress Multisite است که به شما امکان می‌دهد سرویس WaaS یا «وب‌سایت به عنوان سرویس» را به مشتریان خود ارائه دهید. پیش از آنکه وارد جزئیات شویم و ببینیم Ultimate Multisite چگونه می‌تواند به کسب‌وکار و مشتریان شما کمک کند، باید با برخی مفاهیم پایه آشنا شویم.

WordPress Multisite چیست؟

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

این روش برای میلیون‌ها سایت وردپرسی در سراسر دنیا کار می‌کند، اما بیایید از دید یک آژانس یا ارائه‌دهنده هاستینگ به موضوع حجم کار نگاه کنیم.

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

وردپرس در هسته خود قابلیتی به نام «Multisite» دارد که ریشه‌اش به سال ۲۰۱۰ و عرضه WordPress 3.0 برمی‌گردد. از آن زمان تاکنون بازنگری‌های متعددی برای افزودن ویژگی‌های جدید و تقویت امنیت روی آن انجام شده است.

به زبان ساده، WordPress Multisite را می‌توان اینگونه تصور کرد: یک دانشگاه یک نصب واحد از وردپرس دارد، اما هر دانشکده سایت وردپرسی مخصوص به خود را مدیریت می‌کند.

برای درک بهتر این مفهوم، بیایید نگاهی به برخی اصطلاحات پایه بیندازیم که هم در مستندات Ultimate Multisite و هم در جامعه وردپرس رایج هستند.

شبکه (Network)

در وردپرس، شبکه multisite جایی است که تعدادی زیرسایت از یک داشبورد واحد مدیریت می‌شوند. اگرچه روش ایجاد شبکه multisite در هاستینگ‌های مختلف متفاوت است، نتیجه نهایی معمولاً چند دستورالعمل اضافی در فایل wp-config.php است که به وردپرس می‌گوید در این حالت خاص کار کند.

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

Subdomain در مقابل Subdirectory

یکی از اولین تصمیماتی که باید بگیرید این است که آیا نصب multisite با subdirectory کار کند یا subdomain. Ultimate Multisite با هر دو گزینه به خوبی کار می‌کند، اما تفاوت‌های معماری بین این دو پیکربندی وجود دارد.

در پیکربندی subdirectory، سایت‌های شبکه مسیری بر اساس دامنه اصلی می‌گیرند. مثلاً سایتی با نام 'site1' آدرس کامل https://domain.com/site1 را خواهد داشت. در پیکربندی subdomain، سایت شبکه subdomain خاص خود را از دامنه اصلی می‌گیرد. بنابراین سایتی با نام 'site1' آدرس کامل https://site1.domain.com/ را خواهد داشت.

هر دو گزینه کاملاً معتبر هستند، اما استفاده از subdomain مزایایی دارد که البته نیاز به فکر و برنامه‌ریزی بیشتری در معماری دارد.

از نظر DNS، استفاده از subdirectory چالش نسبتاً ساده‌ای است. چون سایت‌های شبکه فرزندان مسیر والد هستند، فقط یک رکورد دامنه برای دامنه اصلی لازم است. برای subdomain چالش کمی پیچیده‌تر است و نیاز به یک رکورد CNAME جداگانه برای هر سایت شبکه یا یک رکورد wildcard (*) در DNS دارید.

موضوع دیگری که باید در نظر گرفت، SSL و صدور و استفاده از گواهی‌های SSL است. در پیکربندی subdirectory می‌توان از یک گواهی دامنه واحد استفاده کرد چون سایت‌های شبکه صرفاً مسیرهایی از دامنه اصلی هستند. بنابراین گواهی برای domain.com به خوبی SSL را برای https://domain.com/site1، https://domain.com/site2 و غیره فراهم می‌کند.

در پیکربندی subdomain استفاده از گواهی SSL wildcard یکی از رایج‌ترین گزینه‌هاست. این نوع گواهی SSL رمزنگاری را برای یک دامنه و _subdomain_های آن فراهم می‌کند. بنابراین گواهی SSL wildcard رمزنگاری را برای https://site1.domain.com، https://site2.domain.com و خود https://domain.com فراهم می‌کند.

اگرچه گزینه‌های دیگری هم وجود دارد، اما معمولاً محدودیت‌هایی در دامنه کاربرد دارند و نیاز به پیکربندی و بررسی بیشتری از نظر تناسب دارند.

پلاگین‌ها و قالب‌ها

آنچه وردپرس می‌دهد، پس هم می‌گیرد - حداقل از دید مشتری. در نصب مستقل وردپرس اگر مدیر سایت یک پلاگین بد نصب کند یا نصب خود را به‌روز نگه ندارد، تنها قربانی خودش است. اما مدیر سایتی که پلاگین بد روی نصب multisite نصب کند، همه سایت‌های شبکه را قربانی می‌کند.

به همین دلیل وقتی وردپرس به صورت multisite پیکربندی می‌شود، قابلیت نصب پلاگین و قالب را از مدیران سایت می‌گیرد و به یک نقش جدید به نام مدیر شبکه یا 'super admin' منتقل می‌کند. این نقش ممتاز می‌تواند تصمیم بگیرد که آیا مدیران سایت‌های شبکه منوی پلاگین‌ها را در داشبورد خود ببینند یا نه، و اگر بله، آیا این مجوزها شامل فعال‌سازی یا غیرفعال‌سازی پلاگین‌ها هم می‌شود.

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

کاربران و مدیران

در WordPress Multisite همه سایت‌های شبکه دیتابیس یکسانی دارند و بنابراین کاربران، نقش‌ها و قابلیت‌های یکسانی را به اشتراک می‌گذارند. بهترین راه برای درک این موضوع این است که همه کاربران عضو شبکه هستند، نه یک سایت خاص.

با این درک، ممکن است ایجاد کاربر نامطلوب باشد و به همین دلیل WordPress Multisite این قابلیت را از مدیران سایت می‌گیرد و به مدیر شبکه منتقل می‌کند. مدیر شبکه به نوبه خود می‌تواند مجوزهای لازم را به مدیر سایت واگذار کند تا بتواند برای سایت خود حساب کاربری ایجاد کند.

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

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

رسانه

در حالی که سایت‌های شبکه در WordPress Multisite دیتابیس مشترکی دارند، مسیرهای جداگانه‌ای در فایل‌سیستم برای فایل‌های رسانه‌ای دارند.

مسیر استاندارد وردپرس (wp-content/uploads) باقی می‌ماند؛ اما مسیرش تغییر می‌کند تا شناسه یکتای سایت شبکه را منعکس کند. در نتیجه فایل‌های رسانه‌ای برای یک سایت شبکه به صورت wp-contents/uploads/site/[id] ظاهر می‌شوند.

قبلاً اشاره کردیم که مزایای مشخصی برای subdomain نسبت به پیکربندی subdirectory وجود دارد و اینجا آن را می‌بینیم: مسیرها.

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

برای نوشته‌ها، یک مسیر اجباری /blog/ به سایت اصلی اضافه می‌شود تا از تداخل با سایت‌های شبکه جلوگیری شود. این یعنی پیوندهای یکتای زیبا مثل 'Post name' به صورت domain.name/blog/post-name/ نمایش داده می‌شوند.

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

صفحات ثابت

در پیکربندی subdirectory پتانسیل تداخل نام‌ها به صفحات ثابت هم گسترش می‌یابد چون سایت اصلی و سایت‌های شبکه مسیر یکسانی دارند.

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

در پیکربندی subdomain احتمال تداخل نام‌ها توسط subdomain کاهش می‌یابد چون برای سایت شبکه یکتاست و هیچ ارتباطی با سایت اصلی ندارد.

ثبت‌نام

در تنظیمات شبکه WordPress Multisite چندین گزینه جدید ثبت‌نام کاربر در دسترس است که به کاربران جدید و موجود امکان ایجاد سایت می‌دهد.

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

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

مثلاً فرض کنید WordPress Multisite شما در کسب‌وکار اخبار و اطلاعات است. شما multisite را راه‌اندازی می‌کنید و سپس سایت‌های شبکه برای مالی، فناوری، سرگرمی و سایر حوزه‌های مورد علاقه ایجاد می‌کنید در حالی که کنترل کلی پلاگین‌ها و قالب‌ها را حفظ می‌کنید. هر سایت شبکه به نوبه خود کنترل بسیار بیشتری روی ظاهر و تجربه کاربری سایت شبکه خود نسبت به custom post type ها یا دسته‌بندی‌های معمولی نوشته‌ها خواهد داشت.

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

اما اگر ماهیت و هدف مورد نظر multisite ارائه سایت‌های شبکه متفاوت باشد که هیچ ارتباطی با یکدیگر ندارند، تقریباً همیشه نیاز به پلاگین‌های خارجی یا اضافی برای دستکاری نقش‌های کاربر خواهد بود.

دامنه و SSL

بیایید در مورد نصب WordPress Multisite صحبت کنیم که تقریباً از توجه ما دور می‌ماند - Wordpress.com. این تاکنون گسترده‌ترین نمونه از WordPress Multisite است و توانایی‌های وسیع آن را برای سفارشی‌سازی و شکل‌دهی برای تحقق یک هدف نشان می‌دهد.

این روزها در اینترنت مدرن استفاده از SSL تقریباً اجباری است و مدیران شبکه WordPress Multisite به زودی با این چالش‌ها مواجه می‌شوند.

در پیکربندی subdomain سایت‌ها بر اساس دامنه ریشه ایجاد می‌شوند. بنابراین سایتی با نام 'site1' به صورت 'site1.domain.com' ایجاد می‌شود. با استفاده از گواهی SSL wildcard، مدیر شبکه می‌تواند با موفقیت این چالش را برطرف کند و قابلیت رمزنگاری SSL را برای شبکه فراهم کند.

WordPress Multisite دارای قابلیت domain mapping است که امکان می‌دهد سایت‌های شبکه با نام‌های دامنه سفارشی یا دامنه‌هایی متفاوت از دامنه ریشه شبکه مرتبط شوند.

برای مدیران شبکه این یک لایه پیچیدگی اضافی هم در پیکربندی نام دامنه و هم در صدور و نگهداری گواهی‌های SSL ایجاد می‌کند.

به این ترتیب در حالی که WordPress Multisite راهی برای اجازه نگاشت www.anotherdomain.com به 'site1' فراهم می‌کند، مدیر شبکه با چالش مدیریت خارجی رکوردهای DNS و پیاده‌سازی گواهی‌های SSL مواجه است.

Ultimate Multisite

با درک تفاوت‌های بین نصب مستقل وردپرس و نصب Multisite، بیایید ببینیم Ultimate Multisite چگونه ابزار نهایی برای ارائه وب‌سایت به عنوان سرویس است.

مقدمه

Ultimate Multisite چاقوی سوئیسی شما برای ایجاد وب‌سایت به عنوان سرویس (WaaS) است. Wix.com، Squarespace، WordPress.com را تصور کنید و سپس تصور کنید که سرویس خودتان را دارید.

در پشت صحنه Ultimate Multisite از WordPress Multisite استفاده می‌کند اما به گونه‌ای که نه تنها چالش‌های بی‌شمار مدیران شبکه با نصب‌های multisite را حل می‌کند، بلکه قابلیت‌ها را ارتقا می‌دهد و امکان پشتیبانی از طیف گسترده‌ای از موارد استفاده را فراهم می‌کند.

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

موارد استفاده

مورد ۱: یک آژانس

معمولاً مهارت‌های اصلی یک آژانس در طراحی وب‌سایت‌هاست و جنبه‌هایی مثل هاستینگ یا بازاریابی به عنوان خدمات اضافی فهرست می‌شوند.

برای آژانس‌ها Ultimate Multisite ارزش پیشنهادی باورنکردنی در توانایی‌هایش برای میزبانی و مدیریت چندین وب‌سایت روی یک پلتفرم واحد ارائه می‌دهد. حتی بیشتر برای آژانس‌هایی که طراحی‌های خود را روی قالب‌های خاصی مثل GeneratePress، Astra، OceanWP یا دیگران استاندارد می‌کنند که می‌توانند از توانایی‌های Ultimate Multisite برای فعال‌سازی خودکار این قالب‌ها برای هر سایت جدید استفاده کنند.

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

به احتمال زیاد استفاده از پیکربندی مطلوب خواهد بود و خوشبختانه Ultimate Multisite نگاشت دامنه و گواهی‌های SSL را با یکپارچه‌سازی‌هایش برای تعدادی از ارائه‌دهندگان هاستینگ محبوب و همچنین سرویس‌هایی مثل Cloudflare و cPanel بسیار آسان می‌کند.

بنابراین با استفاده از یکی از این ارائه‌دهندگان یا قرار دادن Ultimate Multisite پشت Cloudflare، جنبه‌هایی مثل مدیریت دامنه‌ها و گواهی‌های SSL تا حدی بی‌اهمیت می‌شوند.

آژانس‌هایی که ترجیح می‌دهند کنترل دقیقی روی ایجاد سایت‌ها داشته باشند، از سهولتی که می‌توانند سایت‌ها را ایجاد کنند و سایت‌ها را با مشتریان و پلن‌ها از طریق رابط کاربری ساده Ultimate Multisite مرتبط کنند، قدردانی خواهند کرد.

رابط کاربری مدیریت سایت Ultimate Multisite

کنترل دقیق روی پلاگین‌ها و قالب‌ها بر اساس هر محصول از طریق رابط‌های کاربری بصری Ultimate Multisite حفظ می‌شود که امکان می‌دهد پلاگین‌ها و قالب‌ها در دسترس قرار گیرند یا پنهان شوند و همچنین وضعیت فعال‌سازی آن‌ها هنگام ایجاد برای یک سایت جدید.

رابط کاربری محدودیت‌های پلاگین محصول

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

رابط کاربری محدودیت‌های قالب محصول

آژانس‌ها با Ultimate Multisite آرامش خاطر پیدا می‌کنند و می‌توانند آنچه را که بهتر انجام می‌دهند - طراحی وب‌سایت‌های استثنایی - انجام دهند.

مورد ۲: ارائه‌دهنده تخصصی

ضرب‌المثل قدیمی می‌گوید: «یک کار انجام بده و خوب انجام بده». برای بسیاری از متخصصان این یعنی ایجاد محصول یا سرویس حول یک ایده اصلی واحد.

شاید شما یک گلف‌باز مشتاق هستید که وب‌سایت به باشگاه‌ها ارائه می‌دهید یا ممکن است یک گیمر esports مشتاق باشید که وب‌سایت به کلن‌ها ارائه می‌دهید. شاید فردی که سرویس رزرو به رستوران‌ها ارائه می‌دهد؟

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

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

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

بسته به نیازمندی‌ها هر دو پیکربندی subdirectory یا subdomain ممکن است مناسب باشند که در این صورت انتخاب‌های معماری بین گواهی SSL ساده برای subdirectory یا گواهی SSL wildcard برای subdomain خواهد بود.

مورد ۳: هاستینگ وب وردپرس

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

Ultimate Multisite در این حوزه با ارائه راه‌حل جامع آماده برای میزبانی سایت‌های وردپرس برتری دارد. در این راه‌حل مکانیزم‌های اصلی برای ارائه سرویس‌های اشتراکی، جمع‌آوری پرداخت، فرم‌های checkout، کوپن‌های تخفیف و ارتباطات مشتری گنجانده شده است.

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

برای توسعه‌دهندگانی که می‌خواهند با Ultimate Multisite یکپارچه شوند، این راه‌حل همچنین API RESTful جامع و Webhookها برای اطلاع‌رسانی رویدادها ارائه می‌دهد.

بدون اتکا به پلاگین‌ها و لایسنس‌های خارجی متعدد، Ultimate Multisite راه‌حلی غنی از ویژگی و قابل مقایسه با Wix، Squarespace، WordPress.com و دیگران ارائه می‌دهد.

ملاحظات معماری

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

هاستینگ اشتراکی در مقابل اختصاصی

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

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

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

خلاصه اینکه ارزان به معنی خوب نیست.

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

برای لیست ارائه‌دهندگان سازگار و دستورالعمل‌های کامل راه‌اندازی برای هر کدام لطفاً مستندات Compatible Providers را بررسی کنید.

ملاحظات عملکرد

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

این را در نظر بگیرید: شما مدیر شبکه یک نصب Ultimate Multisite با ۱۰۰ سایت هستید. برخی از این سایت‌ها خوب کار می‌کنند و هر روز تعدادی بازدیدکننده جذب می‌کنند.

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

اگر بدون توجه رها شود، سایت Ultimate Multisite واحد مسئول برآورده کردن درخواست‌های همه بازدیدکنندگان سایت‌ها خواهد بود. این درخواست‌ها می‌توانند برای صفحات PHP پویا یا دارایی‌های ثابت مثل شیوه‌نامه‌ها، جاوااسکریپت یا فایل‌های رسانه‌ای باشند. چه یک سایت چه صد سایت، این وظایف تکراری، یکنواخت و اتلاف‌کننده می‌شوند. استفاده از قدرت CPU و حافظه برای پردازش فایل PHP وقتی خروجی همان اطلاعات ثابت برای هر درخواست است غیرضروری است.

به همین ترتیب یک درخواست برای صفحه PHP یا HTML به نوبه خود چندین درخواست متوالی برای اسکریپت‌ها، شیوه‌نامه‌ها و فایل‌های تصویری تولید می‌کند. این درخواست‌ها مستقیماً به سرور Ultimate Multisite شما هدف‌گیری می‌شوند.

می‌توان به راحتی این مشکل را با ارتقای سرور حل کرد اما مشکل ثانویه را حل نمی‌کند - تأخیرهای جغرافیایی. فقط چندین سرور در چندین مکان می‌توانند این مشکل را به درستی برطرف کنند.

به همین دلیل اکثر مدیران شبکه از راه‌حل‌های کش front-end و شبکه‌های توزیع محتوا (CDN) برای برآورده کردن درخواست‌ها برای صفحات ثابت استفاده می‌کنند. برآورده کردن این درخواست‌ها و سرو دارایی‌ها قبل از رسیدن درخواست به سرور منابع پردازشی را ذخیره می‌کند، تأخیرها را حذف می‌کند، از ارتقاهای غیرضروری جلوگیری می‌کند و سرمایه‌گذاری‌های فناوری را حداکثر می‌کند.

Ultimate Multisite شامل افزونه پیشرفته Cloudflare است که به مدیران شبکه امکان می‌دهد نصب‌های خود را پشت Cloudflare قرار دهند و نه تنها از قابلیت‌های کش آن بلکه از میزبانی DNS، گواهی‌های SSL و مکانیزم‌های امنیتی نیز استفاده کنند.

پشتیبان‌گیری

می‌توان از ۵۰ نفر در مورد پشتیبان‌گیری نظر خواست و ۵۰ نظر متفاوت در مورد استراتژی‌های پشتیبان‌گیری دریافت کرد. پاسخ این است که بستگی دارد.

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

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

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

اسنپ‌شات‌ها

اسنپ‌شات‌ها گلوله‌های نقره‌ای پشتیبان‌گیری هستند چون آسان، بدون پیچیدگی (تا وقتی بخواهید بازیابی کنید) و «فقط کار می‌کنند». اما نیاز به کمک از ارائه‌دهنده شما دارد و بیشتر فقط در صورتی اعمال می‌شود که VPS (سرور مجازی خصوصی) یا مشابه داشته باشید. چندین ارائه‌دهنده که در مستندات 'Compatible Providers' ما فهرست شده‌اند پشتیبان‌گیری بدون مداخله یا ملاحظات بیشتر توسط مدیر شبکه ارائه می‌دهند.

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

اسنپ‌شات‌ها ممکن است هزینه اضافی از ارائه‌دهنده هاستینگ داشته باشند اما بیمه‌نامه‌ای در برابر حوادث هستند.

اسکریپت‌های خارجی

به نظر می‌رسد کمبودی در اسکریپت‌ها و راه‌حل‌های خارجی برای پشتیبان‌گیری از منابع وردپرس و MySQL وجود ندارد و این‌ها برای Ultimate Multisite به خوبی کار می‌کنند چون یک پلاگین وردپرس است که از فایل‌سیستم و دیتابیس وردپرس استفاده می‌کند. بنابراین راه‌حلی که از سایت‌های وردپرس پشتیبان می‌گیرد به طور کافی نیازهای Ultimate Multisite را پوشش می‌دهد.

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

باید توجه داشت این اسکریپت‌ها در حین اجرا بار سیستم را افزایش می‌دهند که باید در نظر گرفته شود.

پلاگین‌ها

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

در حالی که پلاگین‌ها در گزینه‌ها و ویژگی‌ها متفاوت هستند، اکثراً همان عملکرد را انجام می‌دهند و آن کپی کردن فایل‌های وردپرس و محتوای دیتابیس است. پس از آن عملکردها متفاوت می‌شوند چون برخی پلاگین‌ها می‌توانند پشتیبان‌ها را به سرویس‌های خارجی مثل Google Drive یا Dropbox یا به نوعی سرویس ذخیره‌سازی شی سازگار مثل S3، Wasabi یا دیگران ارسال کنند. پلاگین‌های جامع‌تر پشتیبان‌های دیفرنشیال یا نوعی استراتژی برای پشتیبان‌گیری فقط از داده‌هایی که تغییر کرده‌اند برای صرفه‌جویی در هزینه‌های ذخیره‌سازی خارجی ارائه می‌دهند.

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

دامنه و SSL

در مورد نام‌های دامنه در حالت subdomain multisite قبلاً بسیار بحث شده است. راه‌حل تقریباً جهانی برای مدیران شبکه استفاده از رکوردهای DNS wildcard است.

مثال پیکربندی رکورد DNS wildcard

این نوع رکورد DNS با موفقیت _subdomain_هایی مثل 'site1.domain.com' و 'site2.domain.com' را به آدرس IP 1.2.3.4 حل می‌کند و بنابراین از Ultimate Multisite و تا حد بیشتری WordPress Multisite با استفاده از حالت subdomain پشتیبانی می‌کند.

این ممکن است برای HTTP کاملاً خوب کار کند چون هاست هدف از هدرهای HTTP خوانده می‌شود اما به ندرت وب این روزها به این سادگی است که تراکنش‌های امن HTTPS تقریباً اجباری هستند.

خوشبختانه گزینه‌های آسانی برای گواهی‌های SSL وجود دارد. در حالت subdirectory می‌توان از گواهی دامنه معمولی استفاده کرد. این‌ها به راحتی و رایگان از ارائه‌دهندگان هاستینگ که ممکن است از سرویس رایگان LetsEncrypt یا منبع دیگری استفاده کنند در دسترس هستند. در غیر این صورت این‌ها به صورت تجاری از مراجع در دسترس هستند اگر بتوانید درخواست امضای گواهی را تولید کنید.

برای حالت subdomain استفاده از گواهی SSL wildcard کاملاً با دامنه wildcard جفت می‌شود و اجازه می‌دهد گواهی برای دامنه ریشه و همه _subdomain_ها بدون پیکربندی اضافی معتبر باشد.

با این حال، باید توجه داشت که گواهی‌های SSL wildcard ممکن است با سرویس‌هایی مثل Cloudflare کار نکنند مگر اینکه در پلن enterprise باشید یا رکورد را روی DNS only تنظیم کنید که در این صورت همه کش و بهینه‌سازی دور زده می‌شود.

Ultimate Multisite از جعبه راه‌حلی برای این مشکل ارائه می‌دهد که تجربه گسترده ما با نیازهای WordPress Multisite ها را نشان می‌دهد. فعال کردن این افزونه ساده باعث می‌شود Ultimate Multisite از اعتبارنامه‌های Cloudflare شما استفاده کند تا به طور خودکار رکوردهای DNS برای سایت‌های شبکه در Cloudflare اضافه کند و حالت آن‌ها را روی 'proxied' تنظیم کند. به این ترتیب هر زیرسایت شبکه، وقتی ایجاد می‌شود، حفاظت و مزایای کامل Cloudflare شامل SSL را خواهد داشت.

بسته به ماهیت و هدف نصب Ultimate Multisite شما ممکن است نیاز باشد مشتریان از دامنه‌های خود استفاده کنند. در این صورت مدیر شبکه موظف به حل دو مشکل است. یک، میزبانی نام دامنه و دو، گواهی‌های SSL برای دامنه.

برای بسیاری، استفاده از Cloudflare گزینه آسانی است. مشتری فقط باید دامنه خود را روی Cloudflare قرار دهد، یک CNAME به دامنه ریشه Ultimate Multisite اشاره دهد و دامنه خود را در Ultimate Multisite نگاشت کند تا شروع به بهره‌برداری از نام دامنه سفارشی خود کند.

خارج از این، راه‌حل‌های جایگزین باید جستجو شوند که به همین دلیل Ultimate Multisite لیستی از Compatible Providers توصیه می‌کند. این به این دلیل است که فرایند راه‌اندازی DNS و SSL می‌تواند فرایند غیرپیش‌پا‌افتاده‌ای باشد. با این حال، با یکپارچه‌سازی Ultimate Multisite با این ارائه‌دهندگان پیچیدگی بسیار کاهش می‌یابد و روش خودکار می‌شود.

پلاگین‌ها

بسیار محتمل است که به پلاگین‌های اضافی برای ارائه قابلیت به مشتریان یا سایت‌های شبکه نیاز داشته باشید. آیا همه پلاگین‌ها با WordPress Multisite و Ultimate Multisite کار می‌کنند؟ خب، بستگی دارد.

در حالی که اکثر پلاگین‌ها در WordPress Multisite قابل نصب هستند، فعال‌سازی و لایسنس آن‌ها از نویسنده به نویسنده متفاوت است.

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

بنابراین ممکن است بهتر باشد با نویسنده پلاگین در مورد اینکه پلاگین آن‌ها چگونه با WordPress Multisite کار می‌کند و هر نیازمندی یا روش خاصی که برای لایسنس آن لازم است بررسی کنید.