Manual:Wiki family/ru

Ниже приведены инструкции по настройке MediaWiki для размещения более одного вики-сайта. Множественные вики, находящиеся на одном сервере, называются "Вики-семейство" или "Вики-ферма". Список некоторых вики-ферм доступен на сайте.

Вики-ферма
Следующие шаги предназначены для запуска нескольких вики-сайтов в одной и той же версии MediaWiki:
 * 1) Установите первую вики-страницу в обычном режиме. Подробности см. в.
 * 2) Включите свой веб-сервер для совместного использования вашей установки MediaWiki со всеми вики. Для нескольких (поддоменов) вы можете использовать функцию прослушивания нескольких имен серверов. Для нескольких подкаталогов вы можете использовать правила перезаписи, псевдонимы или символические ссылки.
 * 3) Добавьте код в начало , чтобы определить текущую вики-страницу. Для вики-сайтов по доменному имени:
 * 4) Настройте параметры, которые должны отличаться для всех вики-сайтов. Например:
 * 5) Настройте переопределения для каждой вики. Это должно включать, по крайней мере,   и  . Это можно было бы сделать из отдельного файла, например:

Чтобы создать новую вики-страницу, сначала создайте ее базу данных и добавьте ее настройки, а затем запустите.

Индивидуальные файлы настроек
Этот подход предназначен для работы с полностью независимыми вики-сайтами, но при этом использующими один и тот же веб-сервер и исходный код MediaWiki.


 * 1) Установите первую вики-страницу как обычно, через веб- или CLI-установщик, который настроит вашу базу данных и сгенерирует файл.
 * 2) После установки переименуйте сгенерированный файл , чтобы включить идентификатор wiki (например, имя базы данных), например.
 * 3) Повторите первый и второй шаги выше для каждой вики, которую вы хотите создать.
 * 4) Создайте новый файл , который загрузит правильный файл.

Если ваши вики находятся в одном домене, но по разным путям (например, $ 1, $ 2 и т.д.), Вы можете использовать что-то вроде этого:

Drupal -сайты в стиле
Преимущества этого метода в том, что он полностью прозрачен для пользователей и достаточно безопасен с точки зрения каталога изображений.


 * 1) Создайте базовый каталог, содержащий все ваши файлы MediaWiki "например".
 * 2) Установите MediaWiki и дополнительные инструменты, как обычно, в подкаталог с объявлением версии ("например",  ).
 * 3) Свяжите каталог с объявлением версии с каталогом кода. "например",
 * 4) Создайте каталог sites, содержащий наши изображения и настройки:
 * 5) Настройте wiki как обычно из каталога "/code".
 * 6) После успешной установки "переместите"   в каталог сайтов, который будет совпадать при проверке сайта. Например, чтобы захватить http://example.com/mywiki, можно было бы создать каталог example.com.mywiki. "например",   Смотрите файл Drupal   для получения дополнительной информации об этом.
 * 7) Если вы собираетесь использовать медиафайлы, создайте каталог images в каталоге вашего сайта. "например",    Пользователь, под которым работает Apache, должен иметь права на запись в эту папку.
 * 8) Поместите файл   в стиле Drupal в свой основной каталог:
 * 9) Измените   каждого дочернего сайта, чтобы указать на нужные места:
 * 10) Сначала закомментируйте код, относящийся к   (строки 16-20 в 1.15.3), поскольку он устанавливается в каталог code на.
 * 11) Сначала закомментируйте код, относящийся к  (строки 16-20 в 1.15.3), поскольку он установлен в каталоге  на $3. Их необходимо поместить куда-нибудь после вызова   (строка 25 в 1.15.3), так как в противном случае переменные будут сброшены.
 * 12) При необходимости внесите дополнительные изменения.
 * 13) Подготовьте установку Apache 2. Пример сайта: wiki.example.com
 * 14) Создайте ссылку на каталог code, если требуется "например"
 * 15) Создайте соответствующую конфигурацию VHost:
 * 11. # Если вы настраивали сайт локально, обновите ваш файл  вписав имена сайтов. Теперь ваш сайт должен работать.

В моем случае, я сделал еще одну копию кода, из которой я устанавливал и обновлял LocalSettings.php и базы данных. Учтите, что используемая Drupal'ом переменная  не будет установлена, если скрипты обслуживания запущены из командной строки, поэтому данное решение не позволит вам использовать скрипты обслуживания без некоторых модификаций.

Modified Drupal-style method for Ubuntu
A simplified method for multiple wikis and multiple (or nested) subwikis on Ubuntu/Kubuntu that is loosely based on the above method can be found at:
 * Ubuntuguide.org MediaWiki tips

Советы по обмену информацией между вики-сайтами
You can use to share uploaded media files across wikis. This is similar to Wikimedia Commons for Wikipedia.

For example:


 * en.example.org -
 * fr.example.org -
 * de.example.org -
 * pool.example.org - Shared media files for all wikis.

Shared database tables
Consider using a shared database for user accounts. See for instructions on setting up shared database tables.

Interwiki
You can create interwiki links between all wikis, by using. If the wikis are language editions, it is recommended to name the interwiki prefix after the exact language code. For example, "de" for the German wiki in your family. This way, you can connect pages about the same subject using language links.

Adding Hauptseite on your English "Main Page" will create a link "Deutsch" in the languages sidebar. For further information visit

If you have a central wiki for files, create a prefix for this as well. E.g.  to https://pool.example.org/wiki/$1 and enable the "Forward" checkbox to recognise it as a local wiki in the same family.

Загрузка
Make sure that folder "images" of the pool-wiki is writable.

It is useful to change the "Upload file"-Link of the language-wikis to point to poolwiki's upload-site. Open the "LocalSettings.php" of each language-wiki and add:

In 1.17, you'll also have to set  to be redirected to the pool-wiki on red links.

If you want to allow uploads only for your pool wiki, you may use something like this:

Использование общих файлов
To use poolwiki's files in the languagewikis, open "LocalSettings.php" for each languagewiki and add:

Now you can integrate pool's files with (e.g. ) in the languagewikis.

Описание изображения
In each languagewiki, open (as an admin) the message MediaWiki:Sharedupload-desc-here.

Change the text to something like:

This file is stored in our data-pool. For information and description, please visit the description there.

(And note the ':' at the beginning of the line, which stops 'pool' from being included in the interwiki list at the left of the page.)

If you want to output the media-description, stored in the PoolWiki, too, add to the "LocalSettings.php" of the languagewikis:

Wiki Farm extensions
There are several MediaWiki extensions that attempt to simplify hosting of several wikis by using just one code base, however only one is currently noteworthy:


 * - beta.


 * : For localisation issues of the and customising the Skins regarding the files ,  ,  ,  ,  ,   respectively.

См. также

 * Конфигурационная база данных
 * MediaWiki Farmers user group and Wikifarm
 * — the mechanism by which user accounts can have an extra 'central' identifier.