Table of Contents

Вики-фермы

Вики-ферма - коллекция независимых дочерних вики («животных»), запущенных на одном веб-сервере и опирающихся на один родительский вики-движок («фермера»). Фермер имеет единый пакет плагинов и шаблонов, а каждое из животных может пользоваться из него индивидуальным набором плагинов, независимым от прочих шаблоном и различающимися настройками. Эта концепция в контексте других CMS также называется «мульти-сайт», «мульти-домен» или «суб-сайты».

Есть несколько способов настройки вики-ферм на ДокуВики. Эта страница описывает только простой и самый прямой способ запуска вики-фермы. Более продвинутые настройки и советы описаны на отдельной странице.

Термины

Настройка каталога

Ниже описана стандартная настройка каталога, она является наиболее распространенной и используется в данном документе. Но вы можете сделать свои, иные настройки.

В каталоге фермы количество животных не ограничено, например:

Два разных варианта настройки

Есть два разных варианта настройки: на основе виртуального хоста и .htaccess.

Метод виртуального хоста (или 'виртуального веб-сервера'). Можно настроить доступ к фермеру через «wiki.mydomain.net», а к вики о программировании - через «programming.mydomain.net», при этом они будут располагаться на одной и той же машине.

Метод .htaccess (или 'серверного скрипта'). <Небольшой сценарий рассказывает веб-сервер, как обращаться каталог уровне Каждая вики верхнюю разному, что позволяет независимо вики>. В этом случае «www.mydomain.net/dokuwiki/» может быть стартовой для фермера, а «www.mydomain.net/programming/» - для учебника по программированию.

Несмотря на это различие, оба метода требуют определенную форму конфигурации сервера.

!!! Дальше только отформатировано по образцу farms. Гуглотранслейт во всей красе

Метод виртуального хоста

Если вы хотите, чтобы запустить эту установку, вы должны будете предоставить новых имен, к любой машине, возможно, захотите получить доступ к вашим хозяйства. Для доступа из локальной машине (только), вы должны отредактировать файл «хозяев, чтобы убедиться, что ваш компьютер будет знать своих новых имен.

Для окон, вам нужно будет изменить файл «C:\Windows\System32\Drivers\etc\hosts»; в большинстве установок, вы должны будете иметь доступ администратора для редактирования этого файла.

Для Linux и других Unix-подобных системах, вам нужно будет отредактировать файл »/etc/hosts«.

Для любой системы, вам нужно будет добавить:

127.0.0.1	farm-animal.mydomain.net

(Где фермы животное имя новой вики и mydomain.net подходит для вашей системы.)

Этот метод будет работать только при подключении от одной и той же машине; другие системы не будут автоматически знать дополнительного имени машины.

Для систем вы хотите получить доступ из других источников, вам нужно будет опубликовать новое имя для размещения веб-сервера. Это может быть добавление нового имени машины в файл хостов, если система уже существует, добавляя новый псевдоним с помощью поставщика службы имен, или какой-либо другой метод. Если вы не уверены, обратитесь к системному администратору или поставщику услуг для конкретных инструкций. :!: :!:Пожалуйста, обратите внимание, что в этом случае ферма доступна только на этом компьютере.

Метод .htaccess

Как создать ферму

0. Предпосылки

В дальнейшем мы предполагаем, что вы уже установили стандартную ДокуВики. Пожалуйста, убедитесь, либо установить его должным образом, так что он работает как обычный вики или удалить install.php по соображениям безопасности.

1. Создайте каталог фермы

Создайте пустую папку с именем /var/www/farm. Это будет ваш каталог фермы и должен быть доступен для записи веб-сервером. Это должны быть защищены таким же образом, Вы защитите нормальную ДокуВики.

2. Активируйте ферму

Переименуйте ./inc/preload.php.dist в ./inc/preload.php, откройте его и уберите две соответствующие строки и установить каталог фермы, так что это выглядит так:

// set this to your farm directory
if(!defined('DOKU_FARMDIR')) define('DOKU_FARMDIR', '/var/www/farm');
 
// include this after DOKU_FARMDIR if you want to use farms
include(fullpath(dirname(__FILE__)).'/farm.php');

Примечание: Если ваша ДокуВики старше версии Адора Белль (2012-10-13), эти два файла будут отсутствовать. Вы можете скопировать их отсюда: farm.php и preload.php.dist.

Примечание: Путь, который вы вводите для DOKU_FARMDIR возможно, должны быть основаны на «истинной» путь к каталогу сервера (как показали по PHP переменной $_SERVER['DOCUMENT_ROOT']). Иногда использование символической ссылки не работают. Например, даже если вы обычно доступ к каталогу фермы серверов, так »/public_html/farm«, вы, возможно, потребуется ввести что-то вроде »/home/<htmlusername>/public_html/farm«.

3. Добавьте животное

Извлеките этот шаблон животного в каталоге фермы. Это каталог, который включает в себя пустую data и предварительно заполнены conf каталог.

Затем вам нужно переименовать, которые добывают каталог. Но правила, как назвать папку, в которую будут храниться животных все ее файлы зависит от настройки:

В случае, если вы будете использовать установки .htaccess основе, необходимо раскомментировать и изменить вашего животного $conf['basedir'] в conf/local.protected.php в пути в URL, при которых животное может получить доступ.

4. Добавьте необходимых настройках сервера

Если вы не привыкли к конфигурации сервера, это только сложнее немного. FIXME Это и ниже требует доработки.

а. Метод виртуального хоста

Для этой установки вы должны настроить виртуальный хост для каждого нового животного в панель управления хостингом или httpd.conf. Вот пример httpd.conf для subdomain.example.com:

NameVirtualHost *
 
<VirtualHost *>
    ServerName subdomain.example.com    # this is the URL of your wiki animal
    DocumentRoot /var/www/dokuwiki/     # the document root always needs to be the DokuWiki *farmer* directory
</VirtualHost>

На большинстве общих условиях хостов вам нужно всего лишь добавить имя сервера (нужный домен с или без поддомена) и корень документа (всегда указывает на директорию Farmer) через их GUI.

б. Метод .htaccess

Это .htaccess файл должен быть помещен в каталог фермы. Не забудьте включить .htaccess в конфигурации Apache (AllowOverride All)

.htaccess
RewriteEngine On
 
RewriteRule ^/?([^/]+)/(.*)  /dokuwiki/$2?animal=$1 [QSA]
RewriteRule ^/?([^/]+)$      /dokuwiki/?animal=$1 [QSA]
Options +FollowSymLinks

Измените /dokuwiki/ на путь к фермеру.

5. Поменяйте админский пароль

Готово, теперь вы можете просто пойти в URL вашего животного (или subdomain.example.com или example.com/farm/animal/ в зависимости от настроек).

:!: Как шаблон для животных включает учетной записи по умолчанию в «Admin» пользователей с паролем «admin». Пожалуйста, измените пароль администратора как можно скорее. Просто войдите с admin/admin, перейдите в раздел «Управление» > «Диспетчер пользователей», нажмите на пользователя с правами администратора и изменить его пароль ниже. Вы должны также изменить адрес электронной почты администратора.

Как добавить больше животных

После первоначальной настройки, необходимо только повторить добавить животное, добавить необходимые параметры сервера (только в случае установки виртуального хоста) и изменить пароль администратора для каждого нового животного.

Обсуждение

Вы можете добавить вопросы и запросы на странице обсуждения (англ.)

1)
Но это также будет работать с любой другой из следующих имен каталогов: example или example.com