Сегодня 20 мая, понедельник ГлавнаяНовостиО проектеЛичный кабинетПомощьКонтакты Сделать стартовойКарта сайтаНаписать администрации
Поиск по сайту
 
Ваше мнение
Какой рейтинг вас больше интересует?
 
 
 
 
 
Проголосовало: 7273
Кнопка
BlogRider.ru - Каталог блогов Рунета
получить код
Журнал Витуса.
Журнал Витуса.
Голосов: 2
Адрес блога: http://vitus-wagner.livejournal.com/
Добавлен: 2008-02-19 12:48:41 блограйдером Lurk
 

Настройка Ikiwiki в Debian

2012-03-05 12:32:18 (читать в оригинале)

Почему после долгих и продолжительных раздумий я выбрал 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, входил я, любимый, и [personal profile] 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 comment count unavailable comments

Тэги: blog, debian, ikiwiki, open, source

 


Самый-самый блог
Блогер ЖЖ все стерпит
ЖЖ все стерпит
по количеству голосов (152) в категории «Истории»


Загрузка...Загрузка...
BlogRider.ru не имеет отношения к публикуемым в записях блогов материалам. Все записи
взяты из открытых общедоступных источников и являются собственностью их авторов.