インスタントコモンズ

From MediaWiki.org
Jump to navigation Jump to search
This page is a translated version of the page InstantCommons and the translation is 34% complete.

Other languages:
Deutsch • ‎English • ‎dansk • ‎español • ‎français • ‎polski • ‎português do Brasil • ‎русский • ‎فارسی • ‎中文 • ‎日本語
任意のMediaWikiにコモンズの画像名を書き込むと ...
... 画像がコモンズから取り込まれページに埋め込まれます。.

インスタントコモンズは、世界中にあるどのMediaWikiからでもウィキメディアコモンズにアップロードされたメディアファイルを利用できるようにするMediaWikiの機能の一つです。 インスタントコモンズに対応にしたウィキは、コモンズの内容をキャッシュしてダウンロードが最初の1回で済むようにし、2回目以降のページ閲覧ではローカルにあるコピーを読み込みます。

Rationale

2019年4月現在、ウィキメディア財団が主催するメディアの中心的リポジトリウィキメディアコモンズには5200万個以上のファイルがあります。いずれのファイルも無料のライセンスまたはパプリックドメインの元で利用できます。公式の記章や商標の利用に関するものを除き、この他に利用上の制限はありません。

コモンズが知られるようになるにつれ、そこにあるコンテンツを利用し、新しい資料を提供したいという外部からの要請も高まります。現在技術的にはウィキメディアサーバのあらゆるWebページにある画像を直接読み込むことができます。そのようなホットリンク(画像への直接リンク)は可能ですが、いくつかの理由で問題があります。

  • それは画像のライセンス条項を尊重していませんし、その他のメタデータを確実に転送することもできません。
  • メディアファイル作者の正しい著作権表示が失われるだけではなく、ウィキメディアの信頼を損ねます。
  • ページ閲覧ごとにウィキメディアの帯域を使います(クライアント側で画像がキャッシュされているか、またはプロキシを通している場合を除いて)
  • サムネイルや注釈の生成のような役に立つ画像操作が楽にならず、特に標準レイアウト操作でウィキが利用しにくくなります。
  • It is tied to URLs as resource identifiers, which complicates mirroring
  • It creates an untrackable external usage web, where any change on Wikimedia's side necessarily affects these external users
  • It does not permit offline viewing, which is crucial in countries which have only intermittent network access.

InstantCommons seeks to address all this by providing an easy method for cached loading of images and metadata from Wikimedia's servers. The first implementation of InstantCommons will be within MediaWiki, allowing for all MediaWiki image operations (thumbnailing, captioning, galleries, etc.) to be performed transparently. However, other wiki engines can implement InstantCommons-like functionality using the API operations described below.

Basic feature set

During the installation, the site administrator can choose whether to enable InstantCommons. Ideally, however, the feature should be enabled by default (provided a writable upload directory is specified) to allow the largest possible number of users to use Wikimedia Commons content.

If the feature is enabled, the wiki behaves like a Wikimedia project, that is, if an image or other media file is referred to which exists on Commons, it can be included in a wiki page like a locally uploaded file by specifying its name. Local filenames take precedence over Commons filenames.

This feature relies on php curl extension. If you do not have this extension installed, maybe InstantCommons cannot work.

設定

MediaWikiのバージョン1.16以降では、LocalSettings.php に以下の1行を追加するだけでインスタントコモンズを使うことができます(詳細は $wgUseInstantCommons を参照してください):

$wgUseInstantCommons = true;

MediaWikiのバージョン1.13から1.15で有効化するには、Manual:$wgForeignFileRepos#ウィキメディア・コモンズにあるファイルの使用 : ForeignAPIRepo を参照してください。

この設定は即座に反映されます。そうならない場合、ウェブサーバで curl_exec() のPHP関数が無効化されていないか確認してください。

HTTPS

Starting June 2015, Wikimedia Commons can only be accessed using HTTPS. Some installs may be missing their root certificate store which prevents MediaWiki from contacting Commons over HTTPS. If InstantCommons stopped working, try:

  • Installing the php curl extension. (It is generally more reliable, and more likely to have proper certificates already installed.) On debian/ubuntu: sudo apt-get install php5-curl
  • Verify you have an up-to-date certificate store. If you have the php curl extension installed, follow the instructions here.

SElinux

If your server OS implements SElinux, please take a look at the dedicated section on the SElinux settings page, and make sure HTTPD scripts and modules can access the network successfully. If SElinux prevents HTTPD scripts and modules from connecting to WikiMedia Commons repository, the InstantCommons feature will simply not work.

ファイアウォールの内側

If the server on which the wiki runs is behind a firewall, the wiki server must be granted outgoing http/https requests to commons.wikimedia.org and upload.wikimedia.org, for Instant Commons to work. The IP address ranges are found at wikitech:IP addresses.

インスタントコモンズを経由したファイルの利用

With InstantCommons enabled, you can choose any image from Wikimedia Commons (e.g. this one), click the "Use this file" button (the button with the wiki icon next to) and paste the markup in your wiki. In our example, pasting

[[File:Wikipedia-Marker-commons.svg|thumb|A picture from Wikimedia Commons embedded in this Wiki]]
A picture from Wikimedia Commons embedded in this Wiki

will render the thumbnail (as can be seen on the right side of this page).

Note that when using files in this way you will still need to respect any licensing and other file use legal requirements - see Commons:Reusing content outside Wikimedia.

Scalability considerations

Because the InstantCommons feature allows a wiki user to download resources from the Wikimedia servers, it is crucial that there is no possibility of a Denial of Service attack against either the using wiki, or the Wikimedia Commons, for example, by pasting 30K of links to the largest files on Wikimedia Commons into a wiki page and pressing "preview". Therefore, every successful InstantCommons request will have to be logged by the InstantCommons-enabled wiki together with the originating user or IP address and the time of the request. If an individual user overrides a generous internal bandwidth limitation (could be as high as 1 GB by default, but should be user-configurable), future images will not be downloaded within a 24 hour period. This limitation should not exist for wiki administrators (if a wiki admin wants to conduct a denial of service attack against his own wiki, they do not need to be stopped from doing so; if they want to conduct an attack against Wikimedia, they cannot be stopped from doing so except on Wikimedia's end). In addition to the per-user bandwidth limit, there could be a limit on the size of files which should be downloaded transparently. This would primarily be because files above a certain size would delay pageviews significantly and might even cause the page request to time out. It might be desirable to use an external application for the purpose of downloading these files, so that it can be done in the background without causing the page request to continue. Finally, there could be a total maximum size for the InstantCommons cache; if this size is exceeded, no further files would be downloaded.

While it is unlikely that individual wikis using the InstantCommons feature would cause a significant increase in cost for the Wikimedia Foundation (since every file only has to be downloaded once, and there are per-user bandwidth limitations), it would nevertheless be fair and reasonable for projects using the feature to include a notice on InstantCommons description pages such as: "This file comes from Wikimedia Commons, a media archive hosted by the Wikimedia Foundation. If you would like to support the Wikimedia Foundation, you can donate here ..."

Future potential

In the future, it may be desirable to offer a publisher/subscribe model of changes, which will require wiki-to-wiki authentication and a database of images which are used in subscribing wikis. This would also open up the threat of cross-wiki vandalism, which could be addressed using a delay phase of 24 hours or more for changes to take effect. Two-way functionality is another possibility, that is, to allow uploading free media directly to Commons from any wiki installation. However, this will require federated authentication as a minimum. It may also necessitate cross-wiki communication facilities to notify users from other wikis about Commons policies, which could be part of a larger project like LiquidThreads.

関連項目