DokuWiki для дневника

19 ноября 2017 (13:45:59)

С некоторых пор я повадился пользоваться персональной вики в качестве личного (не рабочего!) дневника. Кто видел результат — неизменно впечатлялся, но практически все с сожалением говорили, что поднять вики, наверно, является слишком неподъёмной задачей для среднестатистического юзера.

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

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

Среди известных мне вики-движков под эти требования лучше всего подходит DokuWiki — он не требует базу данных, только PHP, поэтому второе требование удовлетворяется автоматом. С редактором и языком там тоже всё в порядке, ну а первое требование в рамках любой вики реализовать нетрудно — тут просто настроить правильно нужно.

Движок создавался как информационная среда для небольших групп разработчиков софта, поэтому подходит идеально. Требования к хостингу минимальные: апач (желательно, другие серверы тоже могут прокатить) с поддержкой PHP от 5.3.3 и старше. Гигабайта дискового пространства более чем достаточно. Любой нормальный браузер работает без проблем (IE с оперой, натурально, сюда не считаем, их я даже не проверял), Microsoft Edge в Win10 нормальным хоть и не назовёшь, но тоже работает.

Итак, прежде всего скачиваем дистрибутив здесь. Там есть конфигуратор, вот что в нём нужно сделать:

  • Выбрать стабильную версию (Stable version), впрочем это должно быть и так активно по умолчанию.
  • Не выбирать опцию «Download changed files only», это нужно только для обновления.
  • Убедиться, что среди языков интерфейса выбран русский, остальные галочки можно сбросить (английский будет доступен в любом случае).
  • Опцию «MicroApache (Windows)» выбирать только в том случае, если предполагается локальная установка.
  • В колонке предлагаемых плагинов обязательно выбрать «Wrap», «Video Share», «Gallery» — для личного дневника это очень полезные штуки.

Архив будет иметь размер 2-3 мегабайта (без микроапача). После скачивания есть два варианта действий — либо ставим локально, либо поднимаем на хостинге. В случае локального варианта просто распаковываем архив в подходящее место, запускаем микроапача и открываем в браузере локалхост, выполняя действия с пункта 4 в нижеследующей инструкции.

В случае хостинга действия более сложные. Что нужно сделать:

  1. Создать на хостинге каталог, в котором всё будет лежать.
  2. Настроить хостинг так, чтобы нужный домен (поддомен, редирект, чего там ещё) указывал именно на этот каталог. Подробности смотреть в документации хостера, это несложно. Неплохо проверить результат, поместив по этому адресу тестовый файл и глянув его доступность.
  3. Распаковать архив в этот каталог.
  4. Открыть в браузере http://сервер/путь/install.php
  5. Задать имя вики и создать суперюзера с логином, паролем, почтовым адресом. Задать политику «незарегистрированным юзерам ничего не доступно».
  6. После этого немедленно удалить на сервере или локальном диске install.php
  7. С помощью инструментов хостинга закрыть паролем доступ к каталогу вики на тот же самый логин и пароль, который установлен для суперюзера. Под апачем это делается через файлы .htaccess (не требуется в случае локальной установки).
  8. Открыть вики в браузере, залогиниться. В предложенном варианте доступ к каталогу будет автоматически означать и доступ к вики в режиме суперюзера.
  9. Зайти в настройки вики, выставить русский язык интерфейса, сохранить настройки.
  10. Очень рекомендую выставить опцию «Первый заголовок вместо имени страницы» в значение «всегда».
  11. Ещё рекомендую в настройках вики найти раздел «Параметры ссылок» и выставить значение «_blank» для ссылок между вики и внешних ссылок: это будет вызывать их открытие открытие в отдельных вкладках.

Всё остальное — это уже по индивидуальному предпочтению. Могу присоветовать только мелкие нюансы.

Если кто видел, как это сделано у меня, то такое оформление получается с применением темы «Vector». Кто не видел — всё равно рекомендую попробовать её, она простая, лаконичная и удобная. Если вы выбрали эту тему, то в каталог /lib/tpl/vector/user можно положить логотип вики (logo.*) и стандартные сайтовые иконки (favicon.ico, apple-touch-icon.png).

Вне зависимости от темы, в каталоге /conf хранятся многие полезные настройки, которые можно сделать только вручную. В частности:

  • acronyms.conf — аббревиатуры, на которые движок будет показывать всплывающие подсказки с расшифровками.
  • entities.local.conf — автозамена по тексту страниц; здесь можно настроить всякую типографику.
  • smileys.conf — настройка замены смайликов картинками. Сами смайлики лежат при этом в /lib/images/smileys

Наконец, очень рекомендую подумать об установке следующих плагинов в дополнение к выбранным при скачивании:

  • «Add New Page» — позволяет вставлять в вики удобные кнопки создания новых страниц. Настоятельно рекомендую!
  • «Button» — позволяет оформлять ссылки в виде кнопок с произвольными иконками.
  • «Folded», «Hidden», «Spoiler» — позволяют оформлять скрываемые куски текста для спойлеров, необязательных пояснений и т.п. Поставьте из этих трёх то, что больше понравится. Можно и все три.
  • «Table Width» — позволяет явно задавать настройки для ширины колонок таблиц.
  • «Tag» — позволяет помечать страницы тегами и формировать списки помеченных страниц. Настоятельно рекомендую!
  • «nspaces» — автоматически формирует списки страниц в пространствах имён. Настоятельно рекомендую!
  • «MathJax» — обязателен к установке, если предполагается включать на страницы вики математические формулы.

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

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

То, что описано в этой статье, относится к первой категории.