Manual:$wgForeignFileRepos/cs

Podrobnosti


Vlastnosti požadované pro všechna úložiště

 * class
 * Název třídy pro úložiště. Může pocházet z jádra nebo rozšíření. Základní třídy úložiště jsou LocalRepo, ForeignDBRepo, FileRepo a ForeignAPIRepo.


 * name
 * Jedinečný název úložiště.



Pro všechna základní úložiště

 * url
 * Základní veřejná URL


 * thumbUrl
 * Základní adresa URL thumb, pokud se liší od adresy url/thumb


 * hashLevels
 * Počet úrovní adresáře pro rozdělení souborů na základě hash


 * thumbScriptUrl
 * Adresa URL pro thumb.php (volitelné, nedoporučuje se)


 * transformVia404
 * Zda přeskočit transformaci mediálního souboru při analýze a spoléhat se na obslužnou rutinu 404.


 * initialCapital
 * Ekvivalent určuje, zda názvy souborů implicitně začínají velkým písmenem. Současná implementace může poskytovat nesprávné odkazy na stránky s popisem, pokud místní  a initialCapital neodpovídají.


 * pathDisclosureProtection
 * Může být 'paranoid' pro odstranění všech parametrů z chybových zpráv, 'none' pro ponechání cest beze změny nebo 'simple' pro nahrazení cest zástupnými symboly. Výchozí pro LocalRepo je 'simple'. Všimněte si, že některé programy pro vytváření miniatur obrázků vkládají cestu k miniaturám do výsledných metadat, takže toto nastavení nemusí poskytovat plnou ochranu.


 * descBaseUrl
 * URL stránek s popisem obrázků, např.


 * scriptDirUrl
 * Adresa URL instalace MediaWiki, ekvivalentní, např.


 * articleUrl
 * Ekvivalent, např.


 * fetchDescription
 * Načtěte text stránky popisu vzdáleného souboru. Ekvivalent.


 * descriptionCacheExpiry
 * Pokud je nastaveno na 0, nebude se používat žádné ukládání do mezipaměti. Nastavte na 1 nebo více (sekundy), abyste definovali, jak dlouho bude trvat místní mezipaměť stránek s popisem. Chcete-li použít, je nutné nastavit fetchDescription na hodnotu true.



Třída ForeignAPIRepo

 * apibase
 * Základní adresa URL pro rozhraní API vzdáleného úložiště (např. ). Používá se pouze pro ForeignAPIRepo.


 * apiThumbCacheExpiry
 * Jak dlouho ukládat thumbs lokálně do mezipaměti. Nastavení na 0 deaktivuje místní ukládání do mezipaměti. Místní ukládání thumb do mezipaměti sníží zatížení cizího serveru a zlepší soukromí uživatelů. Může to však způsobit, že vaše wiki bude o něco pomalejší.



Třída ForeignDBRepo

 * directory
 * Cesta k mediálnímu adresáři MediaWiki na serveru, například.


 * dbType, dbServer, dbUser, dbPassword, dbName, dbFlags
 * Ekvivalentní odpovídajícímu členu


 * tablePrefix
 * Předpona tabulky, cizí wiki je


 * hasSharedCache
 * True, pokud je sdílená mezipaměť wiki přístupná přes místní


 * favicon
 * Favicon pro vzdálené úložiště

Výchozí hodnota (kód v ):



Třída ForeignDBViaLBRepo

 * wiki
 * wiki-db-name used in

Directory permissions
You'll need rw on  and   for whatever user php runs as.

Using files from Wikimedia Commons : ForeignAPIRepo
You can set your wiki to use media from Wikimedia Commons (or from any other MediaWiki-powered site, see below) directly. However, please beware any legal implications.

To use this, you need:


 * PHP with JSON support (for the  function). JSON is enabled by default since PHP 5.2.0, you'll need the PECL extension for older versions. Since MediaWiki 1.16, this is no longer necessary; v. 1.16 will use custom (and slower) code if JSON is not available.
 * The remote wiki must also use MediaWiki 1.13 or later; otherwise its  returns   and file requests fail silently (i.e. the requested files are just treated as non-existent).
 * The remote wiki must also use MediaWiki 1.13 or later; otherwise its  returns   and file requests fail silently (i.e. the requested files are just treated as non-existent).

The code below enables media files from Wikimedia Commons on your site. You should place it in your "LocalSettings.php" file:

To pull images from another Wikimedia project, set  to this wiki's "api.php" file like e.g.. Example:

To embed an image in your installation, simply use.

Performance
You may need to configure the as well. Default is often CACHE_NONE, meaning it will load the image from the remote host on each page load which will be very slow. Similarly, you need to set  to zero if you prefer to use the foreign thumbnails which will be faster.

Setting  may improve performance of instant commons at the cost of making images be lower quality on high resolution displays.

Currently MediaWiki does not support pipelining foreign api requests. A high performance site may want to look at setting up a local proxy (like nginx) that can coalesce multiple requests into a single pipelined request to reduce round trip times from TCP & TLS handshakes.

There is also an alternative implementation at which may be much faster

Using files from a database that you can access : ForeignDBRepo, ForeignDBViaLBRepo
The ForeignDBRepo class is very useful for creating wiki families. In a wiki family, each wiki will have its own database or table prefix. Using this class, you can make a family member aware of the tables of another family member. Access through ForeignDBRepo is faster than through ForeignAPIRepo. This code should be deployed to LocalSettings.php.

Alternatively, if you have set up for multiple wikis, you can use  :

This needs not all the db* parameters as in.

Using files from a local folder : FileRepo
You can set your wiki to use media from a single folder. This is just a demonstration feature at present, and will probably be too slow for busy wikis or slow servers due to the lack of caching. This code should be added to LocalSettings.php.

The below code enabled media files from it:

Caveats
For optimal performance, use a wiki whose primary purpose is to serve as a commons as the target of. Avoid, for instance, pointing two content wikis at each other as foreign repositories in order to share files between them, because this will generate an excessive number of file requests on page views and edits as both wikis request the file from each other.

Likewise, avoid sharing a database between the commons wiki and other content wikis, especially if you must use  instead of   due to limitations imposed by your service provider or administrator. This generates a large number of potentially long-lived database connections that can result in impaired performance, or can exceed DB connection limits even on wikis with very little traffic or activity.