Инструменты пользователя

Инструменты сайта


wiki:administration

Различия

Показаны различия между двумя версиями страницы.


—wiki:administration [2024/08/15 01:53] (текущий) – создано - внешнее изменение 127.0.0.1
Строка 1: Строка 1:
 +===== Настройка прав доступа к папкам и файлам =====
 +<code sh 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 {} \;
 +</code>
  
 +===== Настройка HTTP сервера =====
 +1. Нужно создать файл:
 +
 +<code conf /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>
 +</code>
 +
 +2. Выполнить следующие действия:
 +
 +<code sh dokuwiki_install.sh>
 +#!/bin/bash
 + 
 +# Создаем символическую ссылку
 +ln -s /opt/dokuwiki/conf/apache.conf /etc/apache2/sites-available/dokuwiki.conf
 +# Разрешаем сайт
 +a2ensite dokuwiki
 +# Перезапуск 
 +service apache2 reload
 +</code>
 +
 +===== Настройка =====
 +Начальная настройка: http://wiki/dokuwiki/install.php?l=ru
 +
 +==== Назначение папок и файлов ====
 +FIXME
 +
 +[[https://www.dokuwiki.org/wiki:devel:dirlayout|Назначение папок]]
 +
 +{{tablelayout?rowsHeaderSource=Auto}}
 +
 +|Папка с настройками |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
 +
 +Установка:
 +<code>
 +apt-get install php5-ldap
 +
 +</code>
 +Пример для сервера OpenLDAP:
 +
 +<code php 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;
 +
 +</code>
 +https://www.dokuwiki.org/wiki:auth:ldap
 +
 +===== PHP =====
 +Настройка PHPsoftware:development:ps_pycharm:php:php_setting
 +
 +Преобразование URL средствами веб-сервера
 +Для того, чтобы привести URL к «красивому» виду можно включить Преобразование URL средствами веб-сервера, более подробно описано по адресу: URL-преобразование
 +
 +Добавить модуль в [[https://sysadminmosaic.ru/apache/apache|Apache]]
 +<code>
 +a2enmod rewrite
 +service apache2 restart
 +</code>
 +Разрешить преобразование:
 +
 +<code php dokuwiki/local.php>
 +$conf['userewrite'] = '1';
 +</code>
 +Включить правила:
 +
 +В файле dokuwiki/htaccess нужно убрать символ комментария с следующих строк:
 +
 +<code 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
 +</code>
 +После этого URL будут выглядеть примерно так:
 +<code>
 +http://dokuwiki/start:1
 +</code>
 +При этом старые URL, например:
 +<code>
 +http://dokuwiki/doku.php?id=start:1
 +</code>
 +тоже будут работать.
 +
 +===== Резервное копирование =====
 +Список папок:
 +<code>
 +/opt/dokuwiki/dokuwiki
 +</code>
 +Исключение:
 +<code>
 +/opt/dokuwiki/data/cache
 +/opt/dokuwiki/data/locks
 +/opt/dokuwiki/data/tmp
 +</code>
 +Дополнительно можно использовать расширение [[https://www.dokuwiki.org/plugin:backup|BackupTool for DokuWiki]]
 +
 +==== Восстановление ====
 +При восстановлении данных из резервной копии необходимо создать папки:
 +<code>
 +mkdir /opt/dokuwiki/data/locks
 +mkdir /opt/dokuwiki/data/tmp
 +</code>
 +
 +===== Шаблоны =====
 +[[https://www.dokuwiki.org/template:default|Внешняя ссылка]]
 +
 +===== Расширения =====
 +[[https://sysadminmosaic.ru/dokuwiki/plugins|Расширения]]
 +
 +==== 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»
 +Решение проблемы: нужно применить заплатку: [[https://sysadminmosaic.ru/_media/dokuwiki/ajax.diff|ajax.diff]]
 +
 +cd /usr/share/dokuwiki/lib/exe
 +patch ajax.php<ajax.diff
 +===== Ошибки расширений после перехода на PHP7 =====
 +В общем случае нужна замена аргументов функций.
 +
 +Образец:
 +
 +Заменяем
 +<code>
 +function register(&$c)
 +</code>
 +на
 +<code>
 +function register(Doku_Event_Handler $c)
 +</code>
 +
 +[[https://www.patreon.com/posts/declaration-be-20638123|Declaration should be compatible with... | Andreas Gohr on Patreon]]
 +
 +[[https://forum.dokuwiki.org/thread/15046|Error Messages for plugins after update to PHP7 - DokuWiki User Forum]]
 +
 +
 +===== CSS =====
 +В этом разделе описаны изменения таблиц стилей CSS.
 +
 +https://www.dokuwiki.org/devel:css
 +
 +==== userstyle.css ====
 +В файл conf/userstyle.css для примера внесены следующие изменения:
 +
 +  - Выравнивание по ширине и «красная строка» для основного текста
 +  - Исправление после изменений «для основного текста» для расширения **WRAP**
 +  - Таблицы: вертикальное выравнивание по середине ячейки
 +
 +{{tablelayout?rowsHeaderSource=Auto}}
 +^  Заголовок \\  1  ^  Заголовок \\  2    ^
 +^ :::               ^  Заголовок \\  2/2  ^
 +|  Строка \\ 1      |  Строка \\  2       |
 +|  Строка 1/2       | :::                 |
 +      
 +Увеличение размера шрифта в редакторе страниц
 +Отключение фона из блоков CODE
 +Расширение [[https://sysadminmosaic.ru/dokuwiki/plugins#hidden-css|Hidden]]
 +
 +<code css conf/userstyle.css>
 +/* Выравнивание текста */
 +/* Основной тест */
 +p {
 +text-align: justify;
 +/* text-indent: 1.5em; */
 +}
 +/* Списки */
 +li {
 +text-align: justify;
 +/* text-indent: 0em; */
 +}
 +/* Содержание */
 +#dw__toc li{
 +text-align: left;
 +}
 + 
 +/* Plugin WRAP */
 +.wrap_leftalign p{
 +    text-align: left;
 +}
 +.wrap_centeralign p{
 +    text-align: center;
 +}
 +.wrap_rightalign p{
 +    text-align: right;
 +}
 +.wrap_justify p{
 +    text-align: justify;
 +}
 + 
 +/* Таблицы */
 +td, th {
 +    vertical-align: middle;
 +}
 + 
 +/* CODE */
 +pre, code, samp, kbd {
 +    line-height: 15px;
 +    background-color: transparent;
 +    box-shadow: none;
 +}
 + 
 +/* Редактор */
 +.dokuwiki textarea.edit {
 +    font-family: monospace;
 +    font-size: 150%
 +}
 + 
 +/* Строка поиска */
 +form.search input {
 +    padding-left: 0.5em;
 +}
 +</code>
 +===== Логотип =====
 +  * lib/tpl/dokuwiki/images
 +    * apple-touch-icon.png
 +    * favicon.ico
 +    * logo.png
 +  * data/media
 +    * logo.png
 +
 +===== Ссылки =====
 +[[https://sysadminmosaic.ru/dokuwiki/dokuwiki|Ссылка на источник статьи]]
wiki/administration.1692456117.txt.gz · Последнее изменение: (внешнее изменение)

Если не указано иное, содержимое этой вики предоставляется на условиях следующей лицензии: Public Domain
Public Domain Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki