Manual:$wgUseInstantCommons
Shared uploads: $wgUseInstantCommons | |
---|---|
Enable InstantCommons , i.e. the use of Wikimedia Commons as a shared repository |
|
Introduced in version: | 1.16.0 (r58652) |
Removed in version: | Still in use |
Allowed values: | (boolean) |
Default value: | false |
Other settings: Alphabetical | By function |
Usage
[edit]Add the following to your LocalSettings.php to enable InstantCommons:
$wgUseInstantCommons = true;
Details
[edit]Setting this configuration parameter to true
enables InstantCommons , which allows to automatically use in the local wiki images hosted in Wikimedia Commons.
This configuration parameter's setting is a shorthand for the following setting to $wgForeignFileRepos
:
$wgForeignFileRepos[] = [
'class' => ForeignAPIRepo::class,
'name' => 'wikimediacommons',
'apibase' => 'https://commons.wikimedia.org/w/api.php',
'url' => 'https://upload.wikimedia.org/wikipedia/commons',
'thumbUrl' => 'https://upload.wikimedia.org/wikipedia/commons/thumb',
'hashLevels' => 2,
'transformVia404' => true,
'fetchDescription' => true,
'descriptionCacheExpiry' => 43200,
'apiThumbCacheExpiry' => 0,
];
Note
[edit]Enabling this configuration parameter does not avoid any usage of disk space on the server running the local wiki. Until MediaWiki 1.26, this setting did indeed generate thumbs on the local disk for caching purposes. In case the dimensions of the original file on Wikimedia Commons are exceeded when embedding the file on a page in the local wiki, the file will in its original size be put onto the local disk.
Since MediaWiki 1.27 (gerrit:251556), $wgUseInstantCommons
hotlinks images from Commons by default instead of downloading originals and thumbnailing them locally.
This allows wikis to save on CPU and bandwidth while reducing time to first byte for pages, even without a thumbnail handler. This can make your wiki seem much faster
For example, if you have 100 InstantCommons images on a page, your wiki will make 400 API requests to the Commons API at page load time and the first byte of the page won't be returned for about 30 seconds.
This can be somewhat improved by disabling $wgResponsiveImages
You may prefer to override the default descriptionCacheExpiry
by creating your own $wgForeignFileRepos
entry, or maybe not use foreign file repositories at all and instead copy images from Commons to your own wiki using importImages.php
.
Note that counterintuitively, apiThumbCacheExpiry
is fastest if set to 0.
Another aspect that has a major affect on performance is how long metadata is cached.
Unfortunately this is currently not configurable and hard coded to 3600 seconds (1 hour) which is rather short [1]
See the documentation of configuration parameter $wgForeignFileRepos
for tweaks.
See also
[edit]- Manual:Configuring file uploads - mainly for local uploads
- Manual:$wgForeignFileRepos - to configure multiple file repositories
- Extension:QuickInstantCommons