DokuWiki

«ДокуВики» (DokuWiki) — это совместимая со стандартами и лёгкая в использовании вики, предназначенная в первую очередь для создания разного рода документации. Она ориентирована на команды разработчиков, рабочие группы и небольшие компании. Все данные хранятся в простых текстовых файлах, поэтому для работы не требуется СУБД). Простой, но мощный синтаксис облегчает создание структурированных текстов и позволяет при необходимости читать файлы данных даже за пределами вики.

«ДокуВики» (DokuWiki)

Здесь описана работа с стандартным продуктом: www.dokuwiki.org

Работа с программой из пакетной базы Debian находится на отдельной странице

Установка

FIXME

Папка для установки: /opt/dokuwiki/

Нужно скачать актуальный архив с продуктом и распаковать его в папку для установки:

wget http://download.dokuwiki.org/src/dokuwiki/dokuwiki-stable.tgz
tar -zxvf dokuwiki-stable.tgz -C /tmp/

Сначала ужно установить Apache и необходимые пакеты:

apt install php7.0 libapache2-mod-php7.0 php7.0-mcrypt

http://download.dokuwiki.org/

Стабильная версия

Настройка прав доступа к папкам и файлам

dokuwiki_permissions.sh
#!/bin/bash
 
root_path=/opt/dokuwiki/
 
chown -R www-data:www-data $root_path
find $root_path -type d -exec chmod -v 770 {} \;
find $root_path -type f -exec chmod -v 660 {} \;

Настройка HTTP сервера

1. Нужно создать файл:

/opt/dokuwiki/conf/apache.conf
AliasMatch ^/dokuwiki/sites/[^/]+$      /opt/dokuwiki/
AliasMatch ^/dokuwiki/sites/[^/]+/(.*)$ /opt/dokuwiki/$1
Alias	/dokuwiki	/opt/dokuwiki/
 
<Directory /opt/dokuwiki/>
	Options +FollowSymLinks
	AllowOverride All
	order allow,deny
	Allow from all
	<IfModule mod_rewrite.c>
		# Uncomment to implement server-side URL rewriting
		# (cf. <http://www.dokuwiki.org/config:userewrite>).
		# Do *not* mix that with multisite!
		#RewriteEngine on
		#RewriteBase /dokuwiki
		#RewriteRule ^lib                      - [L]
		#RewriteRule ^doku.php                 - [L]
		#RewriteRule ^feed.php                 - [L]
		#RewriteRule ^_media/(.*)              lib/exe/fetch.php?media=$1  [QSA,L]
		#RewriteRule ^_detail/(.*)             lib/exe/detail.php?media=$1 [QSA,L]
		#RewriteRule ^_export/([^/]+)/(.*)     doku.php?do=export_$1&id=$2 [QSA,L]
		#RewriteRule ^$                        doku.php  [L]
		#RewriteRule (.*)                      doku.php?id=$1  [QSA,L]
	</IfModule>
</Directory>
 
<Directory /opt/dokuwiki/bin>
	Deny from all
</Directory>
 
<Directory /opt/dokuwiki/data>
	Deny from all
</Directory>
 
<VirtualHost *:80>
	DocumentRoot /opt/dokuwiki/
	ServerName wiki.domain.ru
</VirtualHost>

2. Выполнить следующие действия:

dokuwiki_install.sh
#!/bin/bash
 
# Создаем символическую ссылку
ln -s /opt/dokuwiki/conf/apache.conf /etc/apache2/sites-available/dokuwiki.conf
# Разрешаем сайт
a2ensite dokuwiki
# Перезапуск 
service apache2 reload

Настройка

Начальная настройка: http://wiki/dokuwiki/install.php?l=ru

Назначение папок и файлов

FIXME

Назначение папок (EN)

Назначение папок

Папка с настройкамиconf/
Основные настройкиconf/local.php
Папка с даннымиdata/
Старые версии страницdata/attic/
Страницыdata/pages/
Кэш (html)data/cache/
Индексыdata/index/
Блокировкиdata/locks/
Файлыdata/media/
Старые версии файловdata/media_attic/
Временные файлыdata/tmp/

LDAP

Авторизация через LDAP

https://www.dokuwiki.org/ru:auth:ldap

apt-get install php5-ldap

Пример для сервера OpenLDAP:

local.php
# Имя группы администраторов
$conf['superuser'] = '@dokuwiki-admin';
 
# LDAP
$conf['openregister']= 0;
$conf['authtype']    = 'ldap';
$conf['auth']['ldap']['version']  = 3;
$conf['auth']['ldap']['server']   = 'Сервер_LDAP';
$conf['auth']['ldap']['port']     = 389;
$conf['auth']['ldap']['binddn']   = 'cn=admin,dc=domain';
$conf['auth']['ldap']['bindpw']   = 'ПАРОЛЬ';
$conf['auth']['ldap']['usertree'] = 'cn=%{user},ou=users,dc=domain';
$conf['auth']['ldap']['userfilter']  = '(&(cn=%{user})(objectClass=posixAccount))';
$conf['auth']['ldap']['grouptree']   = 'ou=groups,dc=domain';
$conf['auth']['ldap']['groupfilter'] = '(|(memberUid=%{user})(gidNumber=%{gid}))';
# $conf['auth']['ldap']['debug']      = 1;

PHP

Преобразование URL средствами веб-сервера

Для того, чтобы привести URL к «красивому» виду можно включить Преобразование URL средствами веб-сервера, более подробно описано по адресу: URL-преобразование

1. Добавить модуль в Apache

a2enmod rewrite
service apache2 restart

2. Разрешить преобразование:

dokuwiki/local.php
$conf['userewrite'] = '1';

3. Включить правила:

В файле dokuwiki/htaccess нужно убрать символ комментария с следующих строк:

dokuwiki/htaccess
RewriteEngine on
 
# Путь dokuwiki на веб сервере
RewriteBase /dokuwiki
 
RewriteCond %{HTTPS} !=on
RewriteRule ^lib/exe/xmlrpc.php$      https://%{SERVER_NAME}%{REQUEST_URI} [L,R=301]
RewriteRule ^_media/(.*)              lib/exe/fetch.php?media=$1  [QSA,L]
RewriteRule ^_detail/(.*)             lib/exe/detail.php?media=$1  [QSA,L]
RewriteRule ^_export/([^/]+)/(.*)     doku.php?do=export_$1&id=$2  [QSA,L]
RewriteRule ^$                        doku.php  [L]
RewriteCond %{REQUEST_FILENAME}       !-f
RewriteCond %{REQUEST_FILENAME}       !-d
RewriteRule (.*)                      doku.php?id=$1  [QSA,L]
RewriteRule ^index.php$               doku.php

После этого URL будут выглядеть примерно так: http://dokuwiki/start:1

При этом старые URL, например http://dokuwiki/doku.php?id=start:1 тоже будут работать.

Резервное копирование

Список папок:

/opt/dokuwiki/dokuwiki

Исключение:

/opt/dokuwiki/data/cache
/opt/dokuwiki/data/locks
/opt/dokuwiki/data/tmp

Дополнительно можно использовать расширение BackupTool for DokuWiki

Шаблоны

Расширения

Writer2DokuWiki

Преобразование синтаксиса форматирования LibreOffice в формат DocuWiki: Расширение Writer2DokuWiki

Установка

В меню Сервис\Управление расширениями…\Добавить, открыть Writer2DokuWiki.oxt, перезапустить LibreOffice

Выполнение

Выбрать меню Сервис\Дополнения\Writer2DokuWiki

Проблема в версии 0.0.20140505.a+dfsg-4+deb8u1

Проблема возникает при попытке загрузить файл.

  • Пакет: dokuwiki_0.0.20140505.a+dfsg-4+deb8u1_all.deb
  • DokuWiki: 2014-05-05a «Ponder Stibbons»

Решение проблемы: нужно применить заплатку: ajax.diff

cd /usr/share/dokuwiki/lib/exe
patch ajax.php<ajax.diff

Ссылки

dokuwiki/dokuwiki.txt · Последние изменения: 2019-01-19 19:23 — GreyWolf
 
За исключением случаев, когда указано иное, содержимое этой вики предоставляется на условиях следующей лицензии: CC Attribution-Noncommercial-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki