Příručka:$wgCdnServers

This page is a translated version of the page Manual:$wgCdnServers and the translation is 100% complete.
Nastavení HTTP proxy (CDN).: $wgCdnServers
Pole jednotlivých proxy serverů, které MediaWiki pomáhají zjistit, zda byl požadavek zadán proxy.
Ale také posílá zpět do proxy příkazy PURGE o změnách.
Zavedeno od verze:1.34.0 (Gerrit change 387877; git #f9f8dff4)
Odstraněno od verze:stále se používá
Povolené hodnoty:Blíže neurčeno
Výchozí hodnota:[]
Před verzí 1.4.0 nebyla nastavena žádná výchozí hodnota.

Podrobnosti

Tato proměnná říká MediaWiki, jaké jsou individuální IP adresy jednotlivých proxy serverů, které poskytují obsah vašim návštěvníkům.

Čísla portů můžete zadat také explicitně. Pokud však zadáte čísla portů, musíte přidat stejnou IP adresu do $wgCdnServersNoPurge , jinak nebude server rozpoznán jako nakonfigurovaný proxy (známá chyba 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. (https://phabricator.wikimedia.org/T291768)

Všimněte si, že pokud máte rozsahy CIDR (např. 192.0.2.0/24), ujistěte se, že jste je místo toho nastavili na $wgCdnServersNoPurge .

Nastavení lze použít v mnoha nastaveních proxy, a to jak v rámci privátní sítě nebo prostřednictvím externího poskytovatele, tak také s externími službami, které jsou založeny buď na Varnish nebo na Squid.

Příklad konfigurace s Varnish

Zvažte následující podrobnosti nastavení:

  • Jeden a/nebo více webových serverů ("origins") se spuštěnou MediaWiki
  • Konfigurace Varnish ukazuje na váš původ MediaWiki
  • Máte několik Varnish serverů, které zastupují požadavky na webové servery
  • Máte seznam jednotných IP adres (nikoli rozsahů CIDR, místo toho by to bylo $wgCdnServersNoPurge !)

Zde jsou konfigurace, které musíte nastavit:

  • Ve Varnish nastavte hlavičku HTTP X-Forwarded-For s client.ip, příklad:
set req.http.X-Forwarded-For = req.http.X-Forwarded-For + ", " + client.ip;
  • Vytvořte řadu serverů. V ideálním případě by měla být IP v desítkovém formátu, ale to by fungovalo
// V 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";  // Funguje také, pokud máte DNS nakonfigurován na každém zdroji MW. Ale to se nedoporučuje.
#$wgCdnServers[] = "192.0.2.0/24";       // NEFUNGUJE, viz $wgCdnServersNoPurge
Následující IP jsou například účelové, definované v od RFC 5737.

TODO: Vložte příklad platné IPv6 adresy, která je součástí rozsahu 2001:DB8::/32 podle RFC3849

Poznámky k použití a historie

  • Zadání čísla portu vašeho proxy softwaru není nutné. To bude užitečné, když nespouštíte software proxy na portu 80 (ve výchozím nastavení).
  • Všechny IP adresy uvedené v tomto poli budou považovány za důvěryhodné náhradníky (reverzní proxy)
  • IP adresy zobrazené pro uživatele připojené přes tyto servery Squid/Varnish se proto budou shodovat s IP jednotlivých uživatelů, nikoli s IP Squid.

Formát

  • Každá položka může být adresa IPv6/IPv4 v osmičkovém formátu (např. 192.0.2.3)
  • Zápis CIDR a rozsahy by měly být nakonfigurovány v $wgCdnServersNoPurge

Cokoli popsané v includes/utils/IP.php by mělo být platné.

Související odkazy