Jump to content

Manual:$wgCdnServers

From mediawiki.org
This page is a translated version of the page Manual:$wgCdnServers and the translation is 100% complete.
HTTP प्रॉक्सी (CDN) सेटिंग्स: $wgCdnServers
मीडियाविकि को यह पता लगाने में मदद करने के लिए व्यक्तिगत प्रॉक्सी सर्वरों की एक श्रृंखला है कि अनुरोध को प्रॉक्सी किया गया है या नहीं।
लेकिन प्रॉक्सी को बदलावों पर PURGE कमांड्स भेजने के लिए भी।
पहला संस्करण:1.34.0 (Gerrit change 387877; git #f9f8dff4)
अंतिम उपलब्ध संस्करण:अभी भी उपयोग में
अनुमत वैल्यू:अनिर्दिष्ट
डिफ़ॉल्ट वैल्यू:[]
1.4.0 से पहले कोई डिफ़ॉल्ट वैल्यू सेट नहीं किया जाता था।

विवरण

यह वेरिएबल मीडियाविकि को यह बताता है कि उस प्रत्येक प्रॉक्सी सर्वर का व्यक्तिगत IP पता क्या हैं जो आपके आगंतुकों को सामग्री प्रदान करता है।

आप स्पष्ट रूप से पोर्ट नंबर भी निर्दिष्ट कर सकते हैं। हालाँकि, यदि आप पोर्ट नंबर निर्दिष्ट करते हैं, तो आपको उसी IP को $wgCdnServersNoPurge में जोड़ने की आवश्यकता होगी, अन्यथा सर्वर को एक कॉन्फ़िगर किए गए प्रॉक्सी के रूप में पहचाना नहीं जाएगा (ज्ञात बग T132538)।

If you are upgrading to a MediaWiki version prior to 1.35 you might now need to specify port 80 explicitly if you are using that port. E.g. myserver:80. Otherwise the port 1080 will be assumed. (phab:T291768)

ध्यान दें कि यदि आपके पास CIDR रेंज (उदा. 192.0.2.0/24) हैं तो सुनिश्चित करें कि आपने उन्हें इसके बजाय $wgCdnServersNoPurge में सेट किया है।

इस सेटिंग का उपयोग कई प्रॉक्सी सेटअपों में किया जा सकता है: किसी निजी नेटवर्क में या किसी बाहरी प्रदाता के माध्यम से, और या तो Varnish या Squid पर आधारित बाहरी सेवाओं के साथ भी। It can also be used with Nginx caching, to make MediaWiki send PURGE requests to Nginx.

Varnish के साथ कॉन्फ़िगरेशन का उदाहरण

निम्नलिखित सेटअप विवरण देखें:

  • मीडियाविकि चला रहे एक और/या अधिक वेब सर्वर ("ओरिजिन"/"स्रोत")
  • Varnish कॉन्फ़िगरेशन आपके मीडियाविकि स्रोत की ओर इशारा करता है
  • आपके पास कुछ Varnish सर्वर्स हैं जो वेब सर्वरों के लिए अनुरोधों को प्रॉक्सी करते हैं
  • आपके पास एकल IP पतों की एक सूची है (CIDR रेंजों की नहीं, जिसके लिए $wgCdnServersNoPurge का उपयोग किया जाना चाहिए!)

ये रहे वे कॉन्फ़िगरेशन्स जो आपको सेट करने होंगे:

  • Varnish में client.ip के साथ एक HTTP हेडर सेट करें, उदाहरण:
set req.http.X-Forwarded-For = req.http.X-Forwarded-For + ", " + client.ip;
  • सर्वरों की एक सरणी बनाएँ। आदर्श रूप से यह दशाधार प्रारूप में IP होना चाहिए लेकिन यह भी चलेगी
// LocalSettings.php में
$wgUseCdn = true;
$wgCdnServers = array();
$wgCdnServers[] = "192.0.2.100";
$wgCdnServers[] = "192.0.2.107";
$wgCdnServers[] = "192.0.2.200";
$wgCdnServers[] = "some.internal.name";  // हर MW स्रोत में DNS कॉन्फ़िगर किया हुआ हो तो भी काम करता है। लेकिन इसकी अनुशंसा नहीं की जाती है।
#$wgCdnServers[] = "192.0.2.0/24";       // काम *नहीं* करेगा, $wgCdnServersNoPurge देखें
निम्नलिखित IP उदाहरण के उद्देश्य के लिए हैं, RFC 5737 से परिभाषित।

टू-डू: एक मान्य IPv6 पते का उदाहरण डालना है तो RFC3849 के अनुसार 2001:DB8::/32 रेंज का हिस्सा हो।

उपयोग की टिप्पणियाँ और इतिहास

  • आपके प्रॉक्सी सॉफ़्टवेयर का पोर्ट नंबर निर्दिष्ट करना आवश्यक नहीं है। यह तब उपयोगी होगा जब आप अपने प्रॉक्सी सॉफ़्टवेयर को पोर्ट 80 (डिफ़ॉल्ट से प्रयुक्त) पर नहीं चलाएँगे।
  • इस सरणी में सूचीबद्ध किसी भी IP को विश्वस्त सरोगेट (रिवर्स प्रॉक्सी) के रूप में माना जाएगा
  • अतः इन Squid/Varnish सर्वरों के माध्यम से जुड़े सदस्यों के लिए प्रदर्शित IP पते अलग-अलग सदस्यों के IP-ओं से मेल खाएँगे, न कि Squid के IP से।

प्रारूप

  • प्रत्येक प्रविष्टि अष्टाधार प्रारूप में IPv6/IPv4 पता हो सकती है (उदा. 192.0.2.3)
  • CIDR नोटेशन और रेंज को $wgCdnServersNoPurge में कॉन्फ़िगर किया जाना चाहिए

includes/utils/IP.php में वर्णित कुछ भी मान्य होना चाहिए।

ये भी देखें