linux:debian:dokuwiki
Различия
Показаны различия между двумя версиями страницы.
| linux:debian:dokuwiki [2026/10/03 10:49] – создано Кирилл Молчанов | linux:debian:dokuwiki [2026/10/03 10:49] (текущий) – внешнее изменение (Дата неизвестна) 127.0.0.1 | ||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| + | ====== Установка DokuWiki ====== | ||
| + | {{: | ||
| + | |||
| + | ===== Установка Веб-сервер Apache ===== | ||
| + | |||
| + | Устанавливаем Apache: | ||
| + | <code bash> | ||
| + | sudo apt install apache2 | ||
| + | </ | ||
| + | |||
| + | Добавляем Apache в автозагрузку: | ||
| + | <code bash> | ||
| + | sudo systemctl enable apache2 | ||
| + | </ | ||
| + | |||
| + | Запускаем Apache: | ||
| + | <code bash> | ||
| + | sudo systemctl start apache2 | ||
| + | </ | ||
| + | |||
| + | Смотрим статус: | ||
| + | <code bash> | ||
| + | sudo systemctl status apache2 | ||
| + | </ | ||
| + | |||
| + | ===== Установка PHP Для DokuWiki из Официального репозитория Debian ===== | ||
| + | |||
| + | Устанавливаем PHP для DokuWiki: | ||
| + | <code bash> | ||
| + | sudo apt install php php-common php-bz2 php-gd php-intl php-ldap php-mbstring php-json php-xml libapache2-mod-php | ||
| + | sudo apt install php-opcache php-openssl php-pdo-sqlite | ||
| + | </ | ||
| + | |||
| + | ===== Настройка Apache ===== | ||
| + | |||
| + | Установите права доступа на каталог **www**: | ||
| + | <code bash> | ||
| + | sudo chmod -R 775 /var/www | ||
| + | </ | ||
| + | |||
| + | <code bash> | ||
| + | sudo chown -R $USER:$USER /var/www | ||
| + | </ | ||
| + | |||
| + | Добавляем нашего пользователя в группу **www-data**: | ||
| + | <code bash> | ||
| + | sudo usermod -aG www-data $USER | ||
| + | </ | ||
| + | |||
| + | Добавляем пользователя **www-data** в группу нашего пользователя: | ||
| + | <code bash> | ||
| + | sudo usermod -aG $USER www-data | ||
| + | </ | ||
| + | |||
| + | ===== Создаём новый виртуальный хост ===== | ||
| + | |||
| + | Сначала отключим хост по умолчанию: | ||
| + | <code bash> | ||
| + | sudo a2dissite 000-default | ||
| + | </ | ||
| + | |||
| + | Переходим в каталог /var/www: | ||
| + | <code bash> | ||
| + | cd /var/www | ||
| + | </ | ||
| + | |||
| + | Создаём новую каталог: | ||
| + | <code bash> | ||
| + | mkdir dokuwiki | ||
| + | </ | ||
| + | Переходи в созданный каталог: | ||
| + | <code bash> | ||
| + | cd dokuwiki | ||
| + | </ | ||
| + | |||
| + | Скачиваем DokuWiki: | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | <code bash> | ||
| + | wget https:// | ||
| + | </ | ||
| + | |||
| + | Распаковываем архив с **DokuWiki**: | ||
| + | <code bash> | ||
| + | tar xvzf dokuwiki-5805c5df42aef176c25c9f5ebfa018f5.tgz | ||
| + | </ | ||
| + | |||
| + | Удаляем скаченный архив dokuwiki.tgz, | ||
| + | <code bash> | ||
| + | rm dokuwiki-5805c5df42aef176c25c9f5ebfa018f5.tgz | ||
| + | </ | ||
| + | |||
| + | Переименовываем каталог **dokuwiki** в **public_html**: | ||
| + | <code bash> | ||
| + | mv dokuwiki public_html | ||
| + | </ | ||
| + | |||
| + | Меняем владельца на **www-data**: | ||
| + | <code bash> | ||
| + | sudo chown -R www-data: | ||
| + | </ | ||
| + | |||
| + | Даём права на каталоги и файлы: | ||
| + | <code bash> | ||
| + | cd / | ||
| + | </ | ||
| + | |||
| + | <code bash> | ||
| + | sudo find . -type f -exec chmod 644 {} + | ||
| + | </ | ||
| + | |||
| + | <code bash> | ||
| + | sudo find . -type d -exec chmod 775 {} + | ||
| + | </ | ||
| + | |||
| + | Создаём конфигурационный файл нового хоста: | ||
| + | <code bash> | ||
| + | sudo nano / | ||
| + | </ | ||
| + | |||
| + | Приводим конфиг к следующему виду: | ||
| + | <code apache> | ||
| + | < | ||
| + | ServerName wiki.kirmolpc.ru | ||
| + | ServerAlias www.wiki.kirmolpc.ru | ||
| + | ServerAdmin admin@localhost | ||
| + | DocumentRoot / | ||
| + | < | ||
| + | AllowOverride All | ||
| + | Require all granted | ||
| + | RewriteCond %{REQUEST_URI} !^/ | ||
| + | #Redirect permanent / https:// | ||
| + | </ | ||
| + | ErrorLog ${APACHE_LOG_DIR}/ | ||
| + | CustomLog ${APACHE_LOG_DIR}/ | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | Сохраняем файл **Ctrl+O** \\ | ||
| + | Выход из редактора **Ctrl+X** | ||
| + | |||
| + | Включаем хост следующей командой: | ||
| + | <code bash> | ||
| + | sudo a2ensite dokuwiki | ||
| + | </ | ||
| + | |||
| + | Активируем дополнительный модули Apache: | ||
| + | <code bash> | ||
| + | sudo a2enmod rewrite | ||
| + | </ | ||
| + | |||
| + | Перезагружаем Apache: | ||
| + | <code bash> | ||
| + | sudo systemctl restart apache2 | ||
| + | </ | ||
| + | |||
| + | Выключить хост, можно следующей командой: | ||
| + | <code bash> | ||
| + | sudo a2dissite dokuwiki | ||
| + | </ | ||
| + | |||
| + | <code bash> | ||
| + | sudo a2dissite dokuwiki-le-ssl | ||
| + | </ | ||
| + | |||
| + | <code bash> | ||
| + | sudo systemctl restart apache2 | ||
| + | </ | ||
| + | |||
| + | ===== Установка Certbot SSL-сертификата ===== | ||
| + | |||
| + | Устанавливаем Certbot: | ||
| + | <code bash> | ||
| + | sudo apt install certbot python3-certbot-apache | ||
| + | </ | ||
| + | |||
| + | Устанавливаем SSL-на наш домен: | ||
| + | <code bash> | ||
| + | sudo certbot --apache | ||
| + | </ | ||
| + | |||
| + | Отредактируем файл конфигурации ssl: | ||
| + | <code bash> | ||
| + | sudo nano / | ||
| + | </ | ||
| + | |||
| + | Закомментируем или удаляем строчку, | ||
| + | <code apache> | ||
| + | #Redirect permanent / https:// | ||
| + | </ | ||
| + | |||
| + | Перезапускаем Apache: | ||
| + | <code bash> | ||
| + | sudo systemctl restart apache2 | ||
| + | </ | ||
| + | |||
| + | Переходим по нашему домену, | ||
| + | [[https:// | ||
| + | |||
| + | ===== Убираем ссылки на сторонние ресурсы ===== | ||
| + | |||
| + | Переходим в каталог с нашей DokuWiki: | ||
| + | <code bash> | ||
| + | cd / | ||
| + | </ | ||
| + | |||
| + | Редактируем файл по следующиму пути **lib/ | ||
| + | <code bash> | ||
| + | sudo nano lib/ | ||
| + | </ | ||
| + | |||
| + | Находим следующий блок кода и комментируем <!-- --> его. Или удаляем. | ||
| + | <code php> | ||
| + | <div class=" | ||
| + | <?php | ||
| + | tpl_license(' | ||
| + | $target = ($conf[' | ||
| + | ?> | ||
| + | <a href=" | ||
| + | src="<? | ||
| + | <a href=" | ||
| + | src="<? | ||
| + | <a href="// | ||
| + | src="<? | ||
| + | <a href="// | ||
| + | src="<? | ||
| + | <a href=" | ||
| + | src="<? | ||
| + | alt=" | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | Сохраняем файл **Ctrl+O** \\ | ||
| + | Выход из редактора **Ctrl+X** | ||
| + | |||
| + | ===== Подключение Яндекс Метрики ===== | ||
| + | |||
| + | Переходим в каталог с нашей DokuWiki по пути **lib/ | ||
| + | <code bash> | ||
| + | cd / | ||
| + | </ | ||
| + | |||
| + | Создаём файл с именем **footer.html**: | ||
| + | <code bash> | ||
| + | sudo nano footer.html | ||
| + | </ | ||
| + | |||
| + | В файл **footer.html** вставляем код Яндекс Метрики: | ||
| + | <code bash> | ||
| + | Код Яндекс Метрики | ||
| + | </ | ||
| + | |||
| + | Сохраняем файл. | ||
| + | |||
| + | Меняем владельца и группу файла на **www-data**: | ||
| + | <code bash> | ||
| + | sudo chown www-data: | ||
| + | </ | ||
| + | |||
| + | Готово. | ||
| + | |||
| + | ===== Красивые ссылки ===== | ||
| + | |||
| + | Переходим в каталог с нашей DokuWiki: | ||
| + | <code bash> | ||
| + | cd / | ||
| + | </ | ||
| + | |||
| + | Редактируем **conf/ | ||
| + | <code bash> | ||
| + | sudo nano conf/ | ||
| + | </ | ||
| + | |||
| + | Добавляем следующию строку: | ||
| + | <code php> | ||
| + | $conf[' | ||
| + | </ | ||
| + | |||
| + | Переименовываем файл .**htaccess.dist** в **.htaccess**: | ||
| + | <code bash> | ||
| + | mv .htaccess.dist .htaccess | ||
| + | </ | ||
| + | |||
| + | Открываем файл **.htaccess**: | ||
| + | <code bash> | ||
| + | sudo nano .htaccess | ||
| + | </ | ||
| + | |||
| + | Раскомментируем следующие строки: | ||
| + | < | ||
| + | ## Uncomment these rules if you want to have nice URLs using | ||
| + | ## $conf[' | ||
| + | RewriteEngine on | ||
| + | # | ||
| + | RewriteRule ^_media/ | ||
| + | RewriteRule ^_detail/ | ||
| + | RewriteRule ^_export/ | ||
| + | RewriteRule ^$ doku.php | ||
| + | RewriteCond %{REQUEST_FILENAME} | ||
| + | RewriteCond %{REQUEST_FILENAME} | ||
| + | RewriteRule (.*) doku.php? | ||
| + | RewriteRule ^index.php$ | ||
| + | # | ||
| + | ## Not all installations will require the following line. If you do, | ||
| + | ## change "/ | ||
| + | ## to your document root. | ||
| + | RewriteBase / | ||
| + | # | ||
| + | </ | ||
| + | |||
| + | Сохраняем файл **Ctrl+O** \\ | ||
| + | Выход из редактора **Ctrl+X** | ||
| + | |||
| + | Добавляем в конфигурационный файл Apache следующию строку: | ||
| + | <code bash> | ||
| + | sudo nano / | ||
| + | </ | ||
| + | |||
| + | <code bash> | ||
| + | sudo nano / | ||
| + | </ | ||
| + | |||
| + | Если эту строку не добавить, | ||
| + | |||
| + | <code apache> | ||
| + | RewriteCond %{REQUEST_URI} !^/ | ||
| + | </ | ||
| + | |||
| + | Сохраняем файл **Ctrl+O** \\ | ||
| + | Выход из редактора **Ctrl+X** | ||
| + | |||
| + | ===== Карта сайта Sitemap.xml ===== | ||
| + | |||
| + | Карта сайта (sitemaps) создаётся, | ||
| + | |||
| + | По умолчанию, | ||
| + | |||
| + | Файл карты сайта находится в каталоге «**data/ | ||
| + | https:// | ||
| + | |||
| + | Карта сайта будет содержать только ссылки на страницы, | ||
| + | |||
| + | Чтобы карта сайта была пересоздана, | ||
| + | |||
| + | Переходим в каталог с нашей DokuWiki: | ||
| + | <code bash> | ||
| + | cd / | ||
| + | </ | ||
| + | |||
| + | Чтобы Яндекс Вебмастер корректно увидел sitemap.xml. Добавляем директивы Host и Sitemap в файл robots.txt. | ||
| + | |||
| + | Создаём файл **robots.txt**: | ||
| + | <code bash> | ||
| + | sudo nano robots.txt | ||
| + | </ | ||
| + | |||
| + | Вставляем в него следующие строки: | ||
| + | < | ||
| + | User-agent: * | ||
| + | Disallow: /bin/ | ||
| + | Disallow: /conf/ | ||
| + | Disallow: /inc/ | ||
| + | Disallow: /lib/ | ||
| + | Disallow: /vendor/ | ||
| + | |||
| + | Host: wiki.kirmolpc.ru | ||
| + | Sitemap: https:// | ||
| + | </ | ||
| + | |||
| + | Открываем файл .htaccess: | ||
| + | <code bash> | ||
| + | sudo nano .htaccess | ||
| + | </ | ||
| + | |||
| + | Добавляем строку для Apache: | ||
| + | <code htaccess> | ||
| + | RewriteRule ^sitemap\.xml\.gz$ | ||
| + | </ | ||
| + | |||
| + | Сохраняем файл **Ctrl+O** \\ | ||
| + | Выход из редактора **Ctrl+X** | ||
| + | |||
| + | Готово. | ||
