Drupal 8 मल्टीसाइट – अवलोकन
Drupal मल्टीसाइट इंस्टॉलेशन का उपयोग करने का मुख्य कारण यह है कि यह आपका समय बचाता है जब आप कई Drupal साइटों का प्रबंधन करते हैं जो एक ही Drupal कोर संस्करण पर चल रही हैं। जब भी Drupal कोर का नया अपडेट जारी होता है, तो आपको केवल एक कोडबेस पर अपडेट करना होगा — प्रत्येक साइट पर अलग-अलग नहीं। लेकिन इसके कुछ नुकसान भी हैं। हालांकि, यदि आप Aegir होस्टिंग सिस्टम का उपयोग करते हैं, तो ये नुकसान काफी हद तक कम हो जाते हैं।
अन्यथा, मल्टीसाइट इंस्टॉलेशन को मैन्युअल रूप से प्रबंधित करने की कोशिश से उत्पन्न होने वाली जटिलताएँ और संभावित समस्याएँ उन्नत तकनीकी कौशल की मांग करती हैं। इस स्तर के ज्ञान वाले उपयोगकर्ता आमतौर पर “कमांड लाइन” का उपयोग करना जानते हैं, और कमांड लाइन से आप प्रत्येक प्रबंधित साइट को 2 मिनट से भी कम समय में अपडेट कर सकते हैं। Aegir के साथ यह और भी तेज़ होता है, क्योंकि सभी साइटों को “पॉइंट एंड क्लिक” मोड में अपडेट कतार में जोड़ा जा सकता है, जिससे पूरी प्लेटफ़ॉर्म (Aegir की मल्टीसाइट कोडबेस की भाषा में) को नए संस्करण में स्थानांतरित किया जा सकता है। कोई भी साइट जो काम नहीं करती, स्वचालित रूप से रोलबैक हो जाती है।
मल्टीसाइट की मूल बातें
हालाँकि Drupal साइट को वेब सर्वर प्रोग्राम (जैसे Apache या IIS), डेटाबेस प्रोग्राम (जैसे MySQL या MSSql), और PHP इंटरप्रेटर की आवश्यकता होती है, लेकिन आपकी साइट के लिए जो कुछ भी अद्वितीय है, वह आपके डेटाबेस और कोडबेस में संग्रहीत होता है।
Drupal कोर को अपडेट करना मूल रूप से आपके कोडबेस को बदलना है। आपका डेटाबेस अपरिवर्तित रहता है, सिवाय इसके कि कोडबेस को बदलने के बाद आपको प्रत्येक साइट के लिए “अपडेट स्क्रिप्ट” [YOURSITE/update.php] चलानी होती है।
प्रत्येक साइट के लिए एक डेटाबेस का उपयोग करने के कारण
डेटाबेस बैकग्राउंड में काम करते हैं और कोडबेस द्वारा संचालित होते हैं। सामान्य रूप से, आपको डेटाबेस के बारे में चिंता करने की ज़रूरत नहीं होती।
कई साइटों के लिए केवल एक डेटाबेस का उपयोग करने की कोशिश से बहुत कम लाभ (या बिल्कुल नहीं) होता है। जो थोड़ी बहुत डिस्क स्पेस की बचत होती है, वह संभावित समस्याओं की तुलना में नगण्य होती है जो इससे उत्पन्न हो सकती हैं।
- यदि किसी एक साइट का डेटा गलती से (या दुर्भावनापूर्ण हमले के कारण) क्षतिग्रस्त हो जाता है, तो यह सभी साइटों को प्रभावित कर सकता है।
- एक डेटाबेस कई “टेबल्स” से बना होता है। यदि आप मल्टीसाइट कॉन्फ़िगरेशन से किसी एक साइट को अलग करना चाहते हैं, तो यह निर्धारित करना कठिन हो सकता है कि कौन सी टेबल किस साइट की है और कौन सी सभी साइटों में साझा की गई हैं।
प्रत्येक साइट के लिए एक कोडबेस
सैद्धांतिक रूप से, सभी साइटों के लिए जो एक ही Drupal संस्करण पर चल रही हैं, एक साझा कोडबेस होना समय और डिस्क स्पेस बचा सकता है।
हालांकि, डिस्क स्पेस अब बहुत सस्ता है, इसलिए इसे भूल जाइए।
जैसा कि ऊपर उल्लेख किया गया है, प्रत्येक Drupal साइट को नई कोर रिलीज़ के बाद कमांड लाइन से कुछ ही मिनटों में अपडेट किया जा सकता है। इसलिए मल्टीसाइट सेटअप को सीखने और उसमें समस्या निवारण करने की कोशिश करने के बजाय इस कौशल को सीखने में समय लगाना अधिक उपयोगी है।
कोडबेस साझा करना तब ही उपयोगी होता है जब आपकी सभी साइटें समान मॉड्यूल्स और सेटिंग्स का उपयोग करती हैं — जैसे कि यदि आप किसी स्पोर्ट्स लीग की विभिन्न टीमों की वेबसाइटों का प्रबंधन कर रहे हों।
हालाँकि, यदि आप जिन साइटों का प्रबंधन करते हैं उनमें से कुछ अलग-अलग मॉड्यूल्स का उपयोग करती हैं, तो किसी एक मॉड्यूल में बग पूरे मल्टीसाइट सेटअप को प्रभावित कर सकता है और सभी साइटें टूट सकती हैं।
Drupal 8 मल्टीसाइट सेटअप
यदि आप Drupal साइटों को मल्टीसाइट कॉन्फ़िगरेशन में सेटअप करना चाहते हैं, तो यहाँ से शुरू करें।