Manual:Wiki family/hi

नीचे मीडियाविकि की मदद से एक से ज़्यादा विकियाँ होस्ट करने की विधि दी गई है।

एक ही सर्वर पर कई विकियों को एक साथ एक विकि-परिवार या विकि फ़ार्म कहा जाता है। ज्ञात विकि फ़ार्म्स की एक सूची पर उपलब्ध है।

मीडियाविकि के अनुरक्षण स्क्रिप्ट्स (जैसे update.php) एक  तर्क स्वीकार करते हैं जो आपके  फ़ाइल में स्थिर वैल्यू ,   और   के रूप में दिए जाते हैं। तर्क का पूरा वैल्यू,  का वैल्यू है। अगर  तर्क में कोई डैश है, डैश से पहले का हिस्सा   को दिया जाता है और बाद का हिस्सा   को।

इस टेबल में दिखाया गया है कि यह काम कैसे करता है:

ऊपर दिखाया गया है कि विकि फ़ार्म्स को अनुरक्षण स्क्रिप्ट्स में कैसे हैंडल किया जाता है। Since there is no  argument for web requests, they must be handled differently. आम तौर पर डोमेन के नाम और/या URL के पथ की मदद से विकि को चुना जाता है।

तरीके


विकि फ़ार्म
ये चरण, मीडियाविकि के एक ही संस्करण पर चल रहे कई विकियों के लिए हैं:


 * 1) पहला विकि साधारण तरीके से स्थापित करें। विस्तार के लिए  देखें।
 * 2) अपनी मीडियाविकि स्थापना को सभी विकियों के साथ बाँटने के लिए अपना वेब सर्वर सक्षम करें। कई (सब)डोमेन्स के लिए आप कई सर्वर के नामों पर listen का इस्तेमाल कर सकते हैं। कई सबडिरेक्ट्रियों के लिए आप नियमों, उपनामों या चिह्न-कड़ियों को फिर से लिख सकते हैं।
 * 3) वर्तमान विकि का पता लगाने के लिए कोड को   के ऊपर जोड़ें। Note that if the argument to   contains a hyphen, the argument will be split on the hyphen and the resulting two values assigned to   and , respectively. डोमेन के नाम के अनुसार विकियों के लिए:
 * 4) उन सेटिंग्स को कॉन्फ़िगर करें जो सभी विकियों के लिए अलग होंगे। जैसे:
 * 5) हर विकि के अनुसार ओवर्राइड्स कॉन्फ़िगर करें। इसमें कम-से-कम एक  और  होना चाहिए। इसे एक दूसरे फ़ाइल से किया जा सकता है, जैसे:

एक नया विकि बनाने के लिए इसका डेटाबेस बनाएँ और पहले इसकी सेटिंग्स जोड़ें, फिर  चलाएँ।



अलग सेटिंग्स फ़ाइलें
यह विधि बिलकुल ही स्वतंत्र विकियों के लिए है, जो एक ही वेब सर्वर और मीडियाविकि स्रोत कोड का इस्तेमाल करते हैं।


 * 1) पहला विकि साधारण तरीके से स्थापित करें, वेब या फिर CLI इंस्टॉलर की मदद से, जो आपका डेटाबेस सेट अप करके एक  फ़ाइल बनाता है।
 * 2) स्थापना के बाद बनाए गए   फ़ाइल का नाम बदलकर विकि का ID (जैसे डेटाबेस का नाम) जोड़ें,   की तरह।
 * 3) हर विकि के लिए पहले और दूसरे चरण को दोहराएँ।
 * 4) एक नया   फ़ाइल बनाएँ जो सही फ़ाइल को लोड करेगा। As with the above wiki farm example, a   argument containing a hyphen will be split on the hyphen into two values assigned to   and , respectively.

अगर आपके विकियाँ एक ही डोमेन पर हैं मगर अलग-अलग पथों पर (जैसे,  , आदि), आप कुछ ऐसा इंतज़ाम कर सकते हैं:



Drupal जैसे साइट्स
इस सेटअप का फ़ायदा यह है कि यह सदस्यों से पूरी तरह से पारदर्शी है, और साथ में चित्र के डिरेक्ट्री को सुरक्षित भी रखता है।


 * 1) अपने सभी मीडियाविकि फ़ाइलों को रखने के लिए एक जड़ डिरेक्ट्री बनाएँ, जैसे  ।
 * 2) एक संस्करण-घोषक सबडिरेक्ट्री (जैसे  ) में मीडियाविकि और अतिरिक्त उपकरण स्थापित करें।
 * 3) संस्करण-घोषक डिरेक्ट्री को एक कोड डिरेक्ट्री से जोड़ें। जैसे
 * 4) अपने चित्रों और सेटिंग्स के लिए एक sites डिरेक्ट्री बनाएँ:
 * 5) /code डिरेक्ट्री से साधारण तरीके से विकि को स्थापित करें
 * 6) स्थापित कर लेने के बाद   को एक sites डिरेक्ट्री में लेकर जाएँ जो साइट को चेक करने पर मेल खाएगा। उदाहरणस्वरूप, http://example.com/mywiki को कैप्चर करने के लिए डिरेक्ट्री का नाम example.com.mywiki रखना पड़ेगा। जैसे  । इस बारे में अधिक जानकारी के लिए Drupal का   फ़ाइल देखें।
 * 7) अगर आप मीडिया फ़ाइलों का इस्तेमाल करना चाहते हैं, अपने साइट के डिरेक्ट्री में एक images डिरेक्ट्री बनाएँ। जैसे  ।  इसे आवश्यकतानुसार लेखनीय बनाएँ।
 * 8) Drupal जैसा   फ़ाइल अपने मुख्य डिरेक्ट्री में जोड़ें:
 * 9) हर सबसाइटों का   बदलकर सही स्थानों की ओर इशारा करें:
 * 10) पहले  से संबंधित कोड को टिप्पणी में बदलें (1.15.3 में पंक्ति 16 से 20) क्योंकि इसे   द्वारा code पर सेट किया जाता है।
 * 11) फिर इन दोनों पंक्तियों को बदलें और सुनिश्चित करें कि फ़ाइलों तक पहुँचा जा सकता है, जैसे  और । इन्हें   के कॉल के बाद कहीं जोड़ना होगा (1.15.3 में पंक्ति 25 पर), वरना वेरिएबलों को रीसेट कर दिया जाएगा।
 * 12) आवश्यकतानुसार अधिक बदलाव करें।
 * 13) अपनी Apache 2 स्थापना को तैयार करें। उदाहरण साइट: wiki.example.com
 * 14) code डिरेक्ट्री की एक कड़ी बनाएँ, अगर ज़रूरत पड़े। जैसे
 * 15) उचित VHost कॉन्फ़िगरेशन बनाएँ:
 * 11. अगर आप साइटों को लोकल रूप से सेटअप कर रहे हैं, अपने  फ़ाइल को साइटों के नामों के साथ अपडेट करें। साइट अब काम करने लगेगा।

मेरे मामले में, मैंने उस कोड की एक प्रतिलिपि बना ली थी जिससे स्थापित करना है, और मेरे  और डेटाबेसों को अपडेट कर लिया था। ध्यान रखें कि साथी Drupal कोड में, कमांड पंक्ति से अनुरक्षण स्क्रिप्ट्स चलाते समय अपरिभाषित होता है, तो इस समाधान से बिना किसी बदलाव किए अनुरक्षण स्क्रिप्ट्स को चलाना संभव नहीं हो जाता है।



Ubuntu के लिए परिवर्तित Drupal जैसा तरीका
Ubuntu/Kubuntu पर कई विकियों और कई (या नेस्टेड) उपविकियों के लिए एक सरलीकृत तरीका जो ऊपर की विधि पर आधारित है, यहाँ पर पाया जा सकता है:


 * Ubuntuguide.org पर MediaWiki के लिए टिप्पणियाँ

Tips for sharing between wikis
You can use to share uploaded media files across wikis. This is similar to Wikimedia Commons for Wikipedia.

For example:


 * en.example.org -
 * fr.example.org -
 * de.example.org -
 * pool.example.org - Shared media files for all wikis.

Shared database tables
Consider using a shared database for user accounts. See for instructions on setting up shared database tables.

Interwiki
You can create interwiki links between all wikis, by using. If the wikis are language editions, it is recommended to name the interwiki prefix after the exact language code. For example, "de" for the German wiki in your family. This way, you can connect pages about the same subject using language links.

Adding Hauptseite on your English "Main Page" will create a link "Deutsch" in the languages sidebar. For further information visit

If you have a central wiki for files, create a prefix for this as well. E.g.  to https://pool.example.org/wiki/$1 and enable the "Forward" checkbox to recognise it as a local wiki in the same family.

Upload
Make sure that folder "images" of the pool-wiki is writable.

It is useful to change the "Upload file"-Link of the language-wikis to point to poolwiki's upload-site. Open the "LocalSettings.php" of each language-wiki and add:

In 1.17, you'll also have to set to be redirected to the pool-wiki on red links.

If you want to allow uploads only for your pool wiki, you may use something like this:

Use shared files
To use poolwiki's files in the languagewikis, open "LocalSettings.php" for each languagewiki and add:

Now you can integrate pool's files with (e.g. ) in the languagewikis.

Image description
In each languagewiki, open (as an admin) the message MediaWiki:Sharedupload-desc-here.

Change the text to something like:

This file is stored in our data-pool. For information and description, please visit the description there.

(And note the ':' at the beginning of the line, which stops 'pool' from being included in the interwiki list at the left of the page.)

If you want to output the media-description, stored in the PoolWiki, too, add to the "LocalSettings.php" of the languagewikis:

Wiki Farm extensions
There are several MediaWiki extensions that attempt to simplify hosting of several wikis by using just one code base, however only one is currently noteworthy:


 * - beta.


 * : For localisation issues of the and customising the Skins regarding the files ,  ,  ,  ,  ,   respectively.