====== Установка DokuWiki ======
{{:linux:debian:dokuwiki-logo.png?256|}}
----
===== Базовая настройка сервера =====
Подключаем к нашему серверу по SSH:
ssh root@
Меняем язык сервера на Русский:
dpkg-reconfigure locales
===== Обновляем систему и устанавливаем базовый софт =====
Обновляем список пакетов и обновляем систему:
apt update && apt upgrade
Устанавливаем Базовый софт:
apt install apt-transport-https ca-certificates curl htop sudo zip unzip wget
===== Создаём нового пользователя и добавляем его в группу Sudo =====
Создаём пользователя:
adduser kirill
Добавляем нашего пользователя в группу **sudo**:
usermod -aG sudo kirill
Перезагружаем сервер:
reboot
Снова подключаемся к нашему серверу по SSH, но только не под пользователем **Root**, а под пользователем, которого мы только что создали:
ssh kirill@
===== Установка Веб-сервер Apache =====
Устанавливаем Apache:
sudo apt install apache2
Добавляем Apache в автозагрузку:
sudo systemctl enable apache2
Запускаем Apache:
sudo systemctl start apache2
Смотрим статус:
sudo systemctl status apache2
===== Установка PHP Для DokuWiki из Официального репозитория Debian =====
Устанавливаем PHP для DokuWiki:
sudo apt install php php-common php-bz2 php-gd php-intl php-mbstring php-json php-xml libapache2-mod-php php-mysql
===== Настройка Apache =====
Установите права доступа на каталог **www**:
sudo chmod -R 775 /var/www
sudo chown -R $USER:$USER /var/www
Добавляем нашего пользователя в группу **www-data**:
sudo usermod -aG www-data $USER
Добавляем пользователя **www-data** в группу нашего пользователя:
sudo usermod -aG $USER www-data
===== Создаём новый виртуальный хост =====
Сначала отключим хост по умолчанию:
sudo a2dissite 000-default
Переходим в каталог /var/www:
cd /var/www
Создаём новую каталог:
mkdir dokuwiki
Переходи в созданный каталог:
cd dokuwiki
Скачиваем DokuWiki:
[[https://download.dokuwiki.org/|Скачать DokuWiki]]
wget https://download.dokuwiki.org/out/dokuwiki-b49591c91b93de5cb93c40e8ebac1621.tgz
Распаковываем архив с **DokuWiki**:
tar xvzf dokuwiki-b49591c91b93de5cb93c40e8ebac1621.tgz
Удаляем скаченный архив dokuwiki.tgz, он нам больше не понадобиться:
rm dokuwiki-b49591c91b93de5cb93c40e8ebac1621.tgz
Переименовываем каталог **dokuwiki** в **public_html**:
mv dokuwiki public_html
Меняем владельца на **www-data**:
sudo chown -R www-data:www-data public_html
Создаём конфигурационный файл нового хоста:
sudo nano /etc/apache2/sites-available/dokuwiki.conf
Приводим конфиг к следующему виду:
ServerName wiki.kirmol.ru
ServerAlias www.wiki.kirmol.ru
ServerAdmin admin@localhost
DocumentRoot /var/www/dokuwiki/public_html
AllowOverride All
Require all granted
RewriteCond %{REQUEST_URI} !^/server-status$
#Redirect permanent / https://wiki.kirmol.ru/
ErrorLog /var/www/dokuwiki/error.log
CustomLog /var/www/dokuwiki/access.log combined
Включаем хост следующей командой:
sudo a2ensite dokuwiki
Активируем дополнительный модули Apache:
sudo a2enmod rewrite
Перезагружаем Apache:
sudo systemctl restart apache2
===== Установка Certbot SSL-сертификата =====
Устанавливаем Certbot:
sudo apt install certbot python3-certbot-apache
Устанавливаем SSL-на наш домен:
sudo certbot --apache
Отредактируем файл конфигурации ssl:
sudo nano /etc/apache2/sites-available/dokuwiki-le-ssl.conf
Закомментируем или удаляем строчку, иначе, будет циклическое перенаправление на странице:
#Redirect permanent / https://wiki.kirmol.ru/
Перезапускаем Apache:
sudo systemctl restart apache2
Переходим по нашему домену, и завершаем настройку DokuWiki:
[[https://wiki.kirmol.ru/|DokuWiki]]
===== Убираем ссылки на сторонние ресурсы =====
Переходим в каталог с нашей DokuWiki:
cd /var/www/dokuwiki/public_html
Редактируем файл по следующиму пути **lib/tpl/dokuwiki/tpl_footer.php**
sudo nano lib/tpl/dokuwiki/tpl_footer.php
Находим следующий блок кода и комментируем его. Или удаляем.
===== Красивые ссылки =====
Переходим в каталог с нашей DokuWiki:
cd /var/www/dokuwiki/public_html
Редактируем conf/.htaccess:
sudo nano conf/.htaccess
или
sudo nano conf/local.php
Добавляем следующию строку:
$conf['userewrite'] = 1;
Переименовываем файл .htaccess.dist в .htaccess:
mv .htaccess.dist .htaccess
Открываем файл .htaccess:
sudo nano .htaccess
Раскомментируем следующие строки:
## Uncomment these rules if you want to have nice URLs using
## $conf['userewrite'] = 1 - not needed for rewrite mode 2
RewriteEngine on
#
RewriteRule ^_media/(.*) lib/exe/fetch.php?media=$1 [QSA,L,B]
RewriteRule ^_detail/(.*) lib/exe/detail.php?media=$1 [QSA,L,B]
RewriteRule ^_export/([^/]+)/(.*) doku.php?do=export_$1&id=$2 [QSA,L,B]
RewriteRule ^$ doku.php [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) doku.php?id=$1 [QSA,L,B]
RewriteRule ^index.php$ doku.php
#
## Not all installations will require the following line. If you do,
## change "/dokuwiki" to the path to your dokuwiki directory relative
## to your document root.
RewriteBase /
#
Добавляем в конфигурационный файл Apache следующию строку:
sudo nano /etc/apache2/sites-available/dokuwiki.conf
sudo nano /etc/apache2/sites-available/dokuwiki-le-ssl.conf
Если эту строку не добавить, будет ошибка 404
RewriteCond %{REQUEST_URI} !^/server-status$
Готово.