====== Установка на Debian Linux Apache2 и вики-движка DokuWiki ======
===== Теория =====
Этот сайт работает на вики-движке [[wp>ru:dokuwiki|DokuWiki]]. Давайте рассмотрим его установку на виртуальную машину. Посмотреть, какая версия ''DokuWiki'' актуальна на данный момент можно на [[https://download.dokuwiki.org/|официальной странице DokuWiki]].
===== Практика =====
==== Установка Apache2 ====
После того, как [[sw:lin:install_os|установили debian]], можно приступать к установке ''web-сервера apache''. Кстати, по завершении установки, когда нам предлагали выбрать программное обеспечение, можно было установить ''web-сервер apache'' в тот момент, поставив галочку напротив ''web server''. Если ''web-сервер'' уже установлен, можно приступать к установке ''DokuWiki''. Если же нет, то идем по порядку.
Итак, нас ожидает окно приветствия. Вводим имя нашей учетной записи и пароль.
{{:sw:lin:deb:apache2_dokuwiki:12_debianreadyafterinstall.jpg?600|Приветствие}}
После входа проверим наличие обновлений и, если таковые есть, установим их командой:
sudo apt update && sudo apt upgrade -y
{{:sw:lin:deb:apache2_dokuwiki:13_debian_apt_updupg.jpg?600|Обновление ПО}}
Затем зададим имя нашему хосту. Чтобы не было никаких дальнейших проблем (я очень на это надеюсь :-D) зададим имя хосту, полностью соответствующее имени сайта.
sudo nano /etc/hostname
После правки нажимаем [CTRL] + X, затем Y и Enter
{{:sw:lin:deb:apache2_dokuwiki:14_debian_hostname1.jpg?600|Hostname}}
{{:sw:lin:deb:apache2_dokuwiki:15_debian_hostname2.jpg?600|Hostname}}
После перезагрузим систему:
sudo systemctl reboot
{{:sw:lin:deb:apache2_dokuwiki:17_debian_reboot.jpg?600|Перезагрузка}}
После перезагрузки начнем установку ''apache'' командой:
sudo apt install apache2 -y
{{:sw:lin:deb:apache2_dokuwiki:19_debian_apacheinstall2.jpg?600|Установка Apache}}
Установка прошла успешно, проверим работоспособность сервиса:
sudo systemctl status apache2.service
{{:sw:lin:deb:apache2_dokuwiki:20_debian_apachecheck.jpg?600|Проверка работоспособности}}
А теперь перейдем в браузере по адресу нашей виртуальной машины, в моем случае:
''http://192.168.11.13''
{{:sw:lin:deb:apache2_dokuwiki:22_debian_apachestartpage.png?600|Окно Apache в браузере}}
Ура! Все работает. Можно приступать к установке ''DokuWiki''.
==== Установка DokuWiki ====
Установим необходимые пакеты для работы ''DokuWiki'':
sudo apt install php libapache2-mod-php php-xml php-json php-mbstring php-zip php-intl php-gd php-sqlite3 -y
{{:sw:lin:deb:apache2_dokuwiki:1.jpg?600|Установка необходимого ПО}}
Перезапустим сервис ''apache'':
sudo systemctl restart apache2.service
С помощью этой команды скачиваем стабильную, на текущий момент, версию ''DokuWiki'':
wget https://download.dokuwiki.org/src/dokuwiki/dokuwiki-stable.tgz
{{:sw:lin:deb:apache2_dokuwiki:2.jpg?600|Загрузка DokuWiki}}
После успешной загрузки распакуем архив в текущую (домашнюю) директорию:
tar xzvf dokuwiki-stable.tgz
Теперь необходимо перенести все файлы вики-движка ''DokuWiki'' в директорию /var/www/html. Предварительно нужно удалить все ее содержимое. На текущий момент там находится только файл ''index.html''.
sudo rm -rf /var/www/html/*
Теперь перемещаем файлы DokuWiki в директорию ''/var/www/html'':
sudo mv dokuwiki-{DATE}/* /var/www/html
:!: Вместо {DATE} у Вас должна быть дата сборки актуальной версии.
Теперь укажем владельца для директорий и файлов:
sudo chown -R www-data:www-data /var/www/html
Теперь перейдем по адресу нашего сайта и установим ''DokuWiki'':
''http://192.168.11.13/''
{{:sw:lin:deb:apache2_dokuwiki:3.png?600|Установка DokuWiki}}
После установки **обязательно** удалите файл ''install.php''!
sudo rm /var/www/html/install.php
Теперь можно настроить проброс ''80'' (для HTTP) и ''443'' (для HTTPS) портов, если Ваш сайт за NAT'ом и сайт будет работать по адресу Вашего доменного имени. Настройку ''nginx'' можно посмотреть [[nginx_certbot|здесь]].
==== Дополнительные настройки ====
Вы наверняка заметили, что при установке ''DokuWiki'' было предупреждение о том, что не все Ваши данные защищены должным образом (см. предыдущий слайд). Исправим это в фалах ''000-default.conf'' и ''default-ssl.conf''.
Если используете НЕзащищенное соединение (HTTP):
sudo nano /etc/apache2/sites-available/000-default.conf
Если же используете защищенное (скорее всего так и есть) соединение (HTTPS):
sudo nano /etc/apache2/sites-available/default-ssl.conf
В вышеуказанных файлах должны быть соответствующие записи. Смотрим **очень внимательно** на ''AllowOverride'' в '''' - там должно быть ''all'', а НЕ ''none''!
DocumentRoot /var/www/html
Options FollowSymLinks
AllowOverride None
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
:!: Эту правку можно применить к отдельной папке с установленной ''DokuWiki'', например ''/var/www/path-to-dokuwiki'', а не к глобальным настройкам всего сервера.
Не забываем перезапустить ''apache'':
sudo systemctl restart apache2.service
Теперь предупреждение должно пропасть. Посмотреть это можно в разделе "Управление". Там не должно быть никаких предупреждений.
==== Примечание ====
Еще не очень приятным для меня моментом было ограничение на размер загружаемых на сайт файлов - 2 мегабайта. Это [[etc:maxuploadsize|можно исправить]].