• Immutable Page
  • Info
  • Attachments

После того, как вы загрузили и установили MoinMoin, вы хотите "получить wiki". Как описано в конце ../Базовой установки, вам следует скопировать некоторые файлы и каталоги. Это позволит вам иметь столько wiki, сколько вы захотите и легко обновлять MoinMoin: перезаписаны будут только исходные файлы, не их копии.

Всякий раз, копируя эти файлы (и соответственно модифицируя конфигурацию вашего сервера), вы создаёте то, что называется экземпляром wiki. Каждый экземпляр wiki независим от других, с разной конфигурацией, разными страницами, разными пользователями и т.д.

Некоторые из необходимых вам шагов зависят от того, каким веб-сервером и какой операционной системой вы пользуетесь. Они описаны на посвящённых им страницах, которые вам нужно прочесть (как минимум поверхностно), прежде чем читать эту страницу. Другие шаги являются общими для любого веб-сервера и операционной системы (копирование файлов, установка прав доступа), и они описаны здесь.

Прочтите сначала это

Предупреждения о безопасности

/!\ Внимание: убедитесь, что ваш каталог data и конфигурационные файлы не доступны через ваш веб-сервер. Не помещайте каталог вашей wiki в public_html, Sites или любой другой каталог, куда можно попасть через ваш веб-сервер. Веб-серверу необходим доступ только к файлам в каталоге htdocs и скрипту moin.cgi! (Или тому скрипту, который ваш сервер использует для запуска MoinMoin.)

/!\ Внимание: убедитесь, что чтение и запись в каталог data и его подкаталоги запрещены для всех пользователей, кроме пользователя веб-сервера. Если вам нужно дать повсеместные права на чтение/запись для работы, отдавайте себе отчёт, что вы делаете очень опасную настройку, которую сможет скомпрометировать любой пользователь или программа на вашем компьютере.

Примечание для пользователей Windows

Все команды ниже - это команды Linux. Текстового описания производимых ими действий должно быть достаточно, чтобы помочь вам понять, что нужно делать. Используйте Windows Explorer или соответствующие команды консольного режима.

Выбор имени wiki

Выберите уникальное имя для нового экземпляра wiki, который вы хотите создать. Это должно быть короткое слово, отражающее то, для чего вы собираетесь использовать эту wiki. К примеру, название вашей организации, вашей команды, проекта, над которым вы работаете и т.д.

  • <!> Не используйте имя "wiki" - оно зарезервировано для внутреннего использования. Вам потребуется особая настройка, чтобы использовать его с CGI, и вы не сможете использовать его с серверами standalone или twisted.

Имя "mywiki" использовано в различных командах ниже как пример.

Выбор расположения

Выберите каталог на диске, который будет содержать все файлы, необходимые вашему экземпляру wiki. Для начала ваш экземпляр wiki использует приблизительно 10 MB дискового пространства. В дальнейшем, разумеется, он будет расти, в зависимости от того, для чего используется ваша wiki. Личная wiki, даже содержащая много страниц, может занимать только 30 MB или 40 MB дискового пространства. Популярная wiki, или wiki с множеством файлов, присоединённых к страницам, может занимать намного больше.

Если вы администратор сервера (или root), можете использовать любое место, которое вам нравится или которое имеет для вас значение. Например, /usr/local/var/moin, /mnt/wikis, и т.д.

Если вы простой пользователь, то, скорее всего, вам доступен для записи только ваш личный, "домашний" каталог. Выберите подходящий вам подкаталог, к примеру, share/moin.

Сбор некоторой важной информации

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

В Linux, команда export будет использоваться, чтобы напомнить собранную информацию. Пользователям Windows придётся аккуратно переписывать её вручную (или путём copy-paste из "Блокнота"), или сохранить в переменных среды, если будет использоваться командная строка.

Если вы администратор, вам также потребуется определить следующее:

  • USER это имя пользователя веб-сервера

  • GROUP это имя группы, которой принадлежит веб-сервер

Итак, линуксоиды, сохраним эти значения в памяти:

> export PREFIX=/usr                # здесь может быть что-то другое
> export SHARE=$PREFIX/share/moin   # это должно подойти большинству
> export WIKILOCATION=$SHARE        # это просто пример
> export INSTANCE=mywiki            # это просто пример

Администраторам также требуются следующие две строки:

> export USER=www-data              # это просто пример
> export GROUP=www-data             # это просто пример

Копирование файлов

Чтобы создать новый экземпляр, вам нужно сначала создать каталог с именем, выбранным для вашего экземпляра, в каталоге WIKILOCATION. После этого нужно скопировать каталоги data и underlay из вашего каталога SHARE в каталог вашего экземпляра. И, наконец, вам нужно скопировать файл wikiconfig.py из каталога config в каталог экземпляра.

Линуксоидам нужно набрать эти команды:

> cd $WIKILOCATION
> mkdir $INSTANCE                   # создаём каталог для экземпляра
> cp -R $SHARE/data $INSTANCE       # копируем шаблоны из каталога data
> cp -R $SHARE/underlay $INSTANCE   # копируем каталог underlay
> cp $SHARE/config/wikiconfig.py $INSTANCE   # копируем пример файла конфигурации wiki
  • /!\ Обратите внимание, что для запуска многих wiki (т.е. фермы) достаточно иметь в системе один каталог underlay.

Установка прав

Администраторы

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

В Linux будет достаточно следующих команд:

> chown -R $USER.$GROUP $INSTANCE   # проверить, что USER и GROUP правильные
> chmod -R ug+rwX $INSTANCE         # USER.GROUP может читать и писать
> chmod -R o-rwx $INSTANCE          # все остальные отбрасываются

Обычные пользователи

Обычные пользователи наоборот, нуждаются в расширении прав на файлы таким образом, чтобы веб-сервер мог читать и писать в них. На большинстве версий Windows и на некоторых версиях Unix, Linux и других систем для этого можно использовать списки контроля доступа. Они мощны и эффективны, однако их описание выходит за рамки этого документа. Спросите о них кого-нибудь знающего.

Чтобы не прибегать к этому, обычные пользователи могут разрешить доступ к каталогу экземпляра кому угодно. Только таким путём веб-сервер сможет войти туда и сделать свою работу. Это, конечно, ОЧЕНЬ НЕБЕЗОПАСНО, так как любой другой пользователь или программа на сервере смогут читать содержимое каталога. Вы не должны устанавливать так wiki, открытую для общества.

В Linux следующие команды откроют содержимое каталога экземпляра всему миру:

> chmod -R a+rwX $INSTANCE

Примечания:

  • так же можно поместить веб-сервер в одну и ту же группу с пользователем, после чего открыть доступ к каталогу членам этой группы. Это несколько более безопасно (в зависимости от того, кто ещё находится в этой группе), но вам будет нужно сотрудничать с администратором; только он может настраивать группы.

  • лучше всего будет, если администратор сервера настроит suexec для исполнения CGI-скриптов в каталогах пользователя под идентификатором этого пользователя. Вам не потребуется давать права всем на свете, так что это наиболее безопасная настройка, но также придётся договориться с администратором.

Настройка конфигурации

Теперь вам осталось настроить конфигурацию вашего веб-сервера и экземпляра wiki. Просмотрите соответствующую страницу помощи для вашего веб-сервера, после чего вернитесь сюда, чтобы настроить установки вашего экземпляра wiki.

Отредактируйте wikiconfig.py. Установки по умолчанию будут хорошо работать в большинстве случаев, но есть некоторые вещи, которые вы, возможно, захотите изменить. К примеру, имя и логотип вашей wiki :) Читайте комментарии в wikiconfig.py, они проведут вас сквозь процесс. (Начните с "Wiki identity", в строке 25.)

Если комментариев в wikiconfig.py окажется недостаточно, то HelpOnConfiguration содержит подробное описание всех настроек.