Manual:$wgCdnServers

This page is a translated version of the page Manual:$wgCdnServers and the translation is 100% complete.
HTTP プロキシ (CDN) 設定: $wgCdnServers
MediaWiki がリクエストがプロキシされているかどうかを検出するのに役立つ個別のプロキシ サーバーの配列。
ただし、変更時に PURGE コマンドをプロキシに送り返すこともできる。
導入されたバージョン:1.34.0 (Gerrit change 387877; git #f9f8dff4)
除去されたバージョン:使用中
許容される値:未指定
既定値:[]
1.4.0 未満では、既定値は設定されていませんでした。

詳細

この変数は、訪問者にコンテンツを提供する各プロキシサーバーの「個々の」IPアドレスをMediaWikiに伝えるためのものです。

ポート番号を明示的に指定することもできます。 ただし、ポート番号を指定する場合は、同じIPを $wgCdnServersNoPurge に追加する必要があります。そうしないと、サーバーは構成済みプロキシとして認識されません(既知のバグ T132538)。

CIDR範囲(例:192.0.2.0/24)がある場合は、代わりに$wgCdnServersNoPurge に設定してください。

この設定は、プライベートネットワーク内または外部プロバイダーを介した多くのプロキシ設定で使用できます。また、VarnishまたはSquidに基づく外部サービスでも使用できます。

Varnishを使用した構成例

次のセットアップの詳細を考慮してください。

  • MediaWikiが実行されている1つまたは複数のWebサーバー("オリジン")
  • ワニスの構成はMediaWikiの起源を指します
  • Webサーバーのリクエストをプロキシする Varnish サーバーがいくつかあります
  • 単一のIPアドレスのリストがあります(CIDR範囲ではなく、代わりに$wgCdnServersNoPurge になります!)

設定する必要のある構成は次のとおりです。

  • Varnishで、client.ipを使用してX-Forwarded-ForHTTPヘッダーを設定します。例:
set req.http.X-Forwarded-For = req.http.X-Forwarded-For + ", " + client.ip;
  • サーバーのアレイを作成します。理想的には10進形式の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から定義されています。

TODO: RFC3849 に従って 2001:DB8::/32 の範囲の一部である有効な IPv6 アドレスの例を挿入します

使用上の注意と履歴

  • プロキシソフトウェアのポート番号を指定する必要はありません。 これは、プロキシソフトウェアをポート80(デフォルトで使用)で実行しない場合に役立ちます。
  • このアレイにリストされているIPはすべて、信頼できるサロゲート(リバースプロキシ)として扱われます。
  • したがって、これらのSquid / Varnishサーバーを介して接続されたユーザーに表示されるIPアドレスは、SquidのIPではなく、個々のユーザーIPと一致します。

書式

  • 各エントリは、8進形式のIPv6 / IPv4アドレス(例:192.0.2.3)のいずれかです。
  • CIDR表記と範囲は$wgCdnServersNoPurge で構成する必要があります

includes/utils/IP.phpに記載されているものはすべて有効である必要があります。

関連項目