Почему после долгих и продолжительных раздумий я выбрал ikiwiki? Потому что:
1. На мой ...
Почему после долгих и продолжительных раздумий я выбрал ikiwiki? Потому что:
1. На мой взгляд ikiwiki обладает главным свойством, требуемым для веб-приложений на домашней машине - не занимает ресурсов, когда не используется.
2. Второй - то что оно устойчиво к кратковременным всплескам посещаемости, связанным с публикацией ссылок на посещаемых ресурсах. Потому что для чтения это - статика.
3. Обладает уже готовой возможностью пускать пользователей по их аккаунтам во всяких прочих системах ЖЖ, Гугль, FB etc. Это очень полезно для маленького, но публичного сайта. Чтобы не заставлять всех желающих регистроваться на yet another сайте.
4. Работает с произвольными системами версионирования.
5. Хорошая поддержка в Debian.
6. Как это ни странно для современного OSS проекта, в команде есть кто-то кто имеет представление об информационной безопасности.
Недостатки у ikiwiki тоже есть.
1. Отсутствие внятной introductory documentation. (восполнить этот недостаток отчасти призван этот пост)
2. Я пока так и не понял как кастомизировать внешний вид сайта. Для сайта вида "личная записная книжка" это и не важно.
3. Внятного руководства "что делать, если что-то не работает" тоже нет.
этим советом.
Конфиг виртуального сайта для apache2 у меня выглядит так:
<VirtualHost *:80>
ServerAdmin webmaster@wagner.pp.ru
ServerName wiki.wagner.pp.ru
AddDefaultCharset utf-8
AddHandler cgi-script .cgi
DocumentRoot /var/www/wiki
ErrorLog ${APACHE_LOG_DIR}/wiki_error.log
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/wiki_access.log combined
</VirtualHost>
Настройка прав доступаПо некоторому размышлению я завел для wiki отдельного пользователя. Благо ikiwiki для операций, выполняемых через web-интерфейс или post-commit-хуки системы версионирования, имеет suid-врапперы, так что можно не делать директорию с данными writable для того юзера, от которого работает web-сервер. Но делать это от рута - тоже соврешенно лишнее.
Этому пользователю должны быть доступны на запись каталоги
1. Тот, откуда раздается web-сервером сгенерированный html (в вышеприведенном конфиге /var/www/wiki)
2. staging area, в котором имеется рабочая копия wiki, выписанная из системы управления версиями откуда генерируется html (я использую эту же директорию в качестве домашней для юзера wiki)
3. Репозиторий системы версионирования.
Поскольку в качестве системы версионирования для вики я использовал subversion (git, bazaar, mercurial и monotone - поддерживаются) и не только держу репозиторий на той же машине, но и работаю на ней же локально, соответственно и web-интерфейс, и я сам используем протокол file://, мне потредовалось чтобы в ту же группу что и юзер wiki, входил я, любимый, и
irene_dragon. Но если у вас доступ в репозиторий осуществляется по протоколам, которые не завязаны на локальных системных пользователйе, вам этого не надо.
(Варианта в котором местоположение репозитория и машина, где из хранящихся в репозитории файлов генерируется html не совпадают, я пока не рассматривал).
Конфигурирование ikiwikiЧитаем файл /etc/ikiwiki/auto.setup и обнаруживаем что он содержит не совсем то, что нам надо.
Копируем его в скажем ~wiki/wiki.setup, отрываем всю интерактивность (в смысле вызовы IkiWiki::Setup::Automator::ask
и вместо этого вписываем все что надо в вызов Ikiwiki::Setup::Automator->import.
После этого запускаем
sudo -u wiki -H ikiwiki --setup wiki.setup
и, если мы не наглючили в конфигурации, обнаруживаем, что случилось следующее:
1. В систему контроля версий зачекинен модуль для будущей wiki
2. Создана staging area.
3. в файле указанном в опции dumpconfig содержится куда более развесистый конфиг, чем тот что был у нас иззначально.
Вот этот конфиг мы теперь можем подредактировать, добавив в первую очередь нужные плагиныв список add_plugins.
и опции их конфигурации ниже.
после каждого изменения конфига не забываейте выполнить sudo -u wiki ikiwiki --setup файлконфигурацииПолагаться на websetup не рекомендую, с конфигом - проще.
Заполнение wikiНачиная с этого момента можно пытаться работать через web-интерфейс. Но очень рекомендую держать под рукой
рабочую копию выписанную из системы управления версиями. Поскольку, например, для перемещения файлов из одного каталога в другой в web-интерфейсе средств не предусмотрено.
Опять же, web-интерфейс не предлагает, например средств для создания файла robots.txt, в то время как зачекинив его в систему управления версиями мы получаем сразу то, что надо.
http://vitus-wagner.dreamwidth.org/716209.html. Please comment there using OpenID. Now there are
comments
mēbeles dzīvojamā istabā ,mēbeles dzīves,mēbeles dzīvojamā istabā ,mēbeles dzīvojamā istabā,moduļu m ...
mēbeles dzīvojamā istabā ,mēbeles dzīves,mēbeles dzīvojamā istabā ,mēbeles dzīvojamā istabā,moduļu mēbeles dzīvojamām telpām ,moduļu mēbeles dzīvojamā istabā ,Par dzīvojamās istabas mēbeles ,fotogalerija,dzīvo mēbeles ,mēbeles dzīvojamā istabā ,Mēbeles viesistabai kabinets, mēbeles dzīvojamām telpām ,mēbeles dzīvojamā istabā ,par dzīvojamā istabas mēbeles katalogā,Stūra … Continue reading
→
Pret gultas izvēli vajag izturēties ar īpašu atbildību: no šī «iekšējās apdares priekšmeta» ir atkar ...
Pret gultas izvēli vajag izturēties ar īpašu atbildību: no šī «iekšējās apdares priekšmeta» ir atkarīga jūsu labsajūta un garastāvoklis, veselība un arī ģimenes laime. Labs miegs ir ne vienīgā gultas sūtība. Pirms vairāk nekā trīssimt gadiem franču karaļi pieņēma ciemiņus, … Continue reading
→