Установка DokuWiki с Apache и Let's Encrypt на Debian 11

- Коротко: установите Apache и PHP, распакуйте DokuWiki в /var/www/html/dokuwiki, создайте виртуальный хост, получите сертификат Let’s Encrypt через Certbot и включите автопродление. Команды в руководстве подходят для Debian 11 и совместимых систем на базе apt (например, Ubuntu).
- Важно: замените dokuwiki.example.com на ваш домен и проверьте совпадение версии ОС (в тексте указан Debian 11 и пример с Ubuntu 20.04 — команды apt одинаковы, но убедитесь в совместимости пакетов).
Что вы получите
- Рабочую инсталляцию DokuWiki, доступную по HTTPS.
- Автоматическое обновление сертификата Let’s Encrypt.
- Базовые рекомендации по безопасности и проверкам после установки.
Основные заявки поиска (intent) и варианты
- primary: установка DokuWiki
- варианты: DokuWiki Apache Let’s Encrypt, как установить DokuWiki на Debian, DokuWiki Debian 11, DokuWiki SSL Certbot
Требования
- Сервер под управлением Debian 11 или совместимая система с apt (в исходном тексте упоминается Ubuntu 20.04 — проверьте вашу ОС).
- Доменное имя, указывающее на IP сервера.
- Доступ root или пользователь с правами sudo.
Короткий план действий
- Обновить пакеты.
- Установить Apache и PHP с требуемыми модулями.
- Скачать и развернуть DokuWiki.
- Создать виртуальный хост Apache.
- Установить Certbot и получить SSL.
- Настроить автопродление сертификата.
- Пройти установщик DokuWiki в браузере.
Обновление системы
Перед началом обновите пакеты:
apt-get update -yПосле этого переходите к установке веб-сервера и PHP.
Установка Apache и PHP
DokuWiki написан на PHP и работает под Apache или Nginx. Для Apache выполните:
apt-get install apache2 php php-gd php-xml php-json -yЗапустите и включите автозапуск Apache:
systemctl start apache2
systemctl enable apache2Проверьте статус службы при необходимости.
Скачивание и установка DokuWiki
Скачайте последнюю стабильную версию:
wget https://download.dokuwiki.org/src/dokuwiki/dokuwiki-stable.tgzСоздайте директорию в корне сайта Apache и распакуйте туда файлы:
mkdir /var/www/html/dokuwiki
tar -xvzf dokuwiki-stable.tgz -C /var/www/html/dokuwiki/ --strip-components=1Скопируйте файл .htaccess из дистрибутива и назначьте владельца:
cp /var/www/html/dokuwiki/.htaccess{.dist,}
chown -R www-data:www-data /var/www/html/dokuwikiСоздание виртуального хоста Apache
Создайте конфигурацию виртуального хоста:
nano /etc/apache2/sites-available/dokuwiki.confДобавьте эти строки, заменив ServerName на ваш домен:
ServerName dokuwiki.example.com
DocumentRoot /var/www/html/dokuwiki
AllowOverride All
Require all denied
Order allow,deny
Deny from all
ErrorLog /var/log/apache2/dokuwiki_error.log
CustomLog /var/log/apache2/dokuwiki_access.log combined
Сохраните файл, затем включите сайт и перезагрузите Apache:
a2ensite dokuwiki.conf
systemctl reload apache2Проверка статуса Apache:
systemctl status apache2Ожидаемый результат: служба активна (running). Если есть ошибки, проверьте синтаксис конфигурации и логи в /var/log/apache2/.
Защита сайта сертификатом Let’s Encrypt
Установите Certbot с модулем для Apache:
apt-get install certbot python3-certbot-apache -yЗапустите Certbot для получения сертификата, подставив ваш домен:
certbot --apache -d dokuwiki.example.comСледуйте подсказкам: укажите email, согласитесь с правилами и выберите перенаправление HTTP на HTTPS (рекомендуется выбрать перенаправление).
Пример типичного вывода Certbot показывает сохранённые пути сертификатов и инструкцию по обновлению.
Настройка автоматического продления сертификата
Сертификаты Let’s Encrypt действительны 90 дней, поэтому настройте автопродление. Для теста выполните:
certbot renew --dry-runВарианты для автопродления:
- Cron: добавить задачу в crontab:
crontab -eДобавьте строку (пример для ежедневного запуска в 10:00):
00 10 * * * root /usr/bin/certbot renew >/dev/null 2>&1- Systemd: в современных пакетах certbot может быть systemd-таймер. Проверьте наличие таймера и статус через systemctl.
Важно: после настройки проверьте, что команда certbot renew выполняется без ошибок и сертификат обновляется.
Доступ к установщику DokuWiki
Откройте в браузере:
https://dokuwiki.example.com/install.php

Заполните имя вики, логин администратора, пароль, email и политику доступа. Нажмите «Сохранить».
После успешной конфигурации вы увидите страницу завершения установки:

Нажмите «ваш новый DokuWiki», чтобы перейти на сайт. Далее нажмите «Login», введите учётные данные администратора и попадёте на панель управления:



Базовая проверка и критерии приёмки
- Страница https://ваш.домен/install.php отображается корректно.
- После установки доступ по HTTPS и сертификат валиден.
- Вход в панель администратора успешен.
- Каталог /var/www/html/dokuwiki принадлежит www-data и имеет корректные права.
- Резервное копирование конфигурации и каталога data настроено.
Рекомендации по безопасности
- Закройте доступ к служебным директориям (bin, conf, data, inc) — это уже сделано в примере виртуального хоста.
- Регулярно обновляйте систему и PHP-пакеты.
- Используйте сложные пароли для администратора и храните их в менеджере паролей.
- Огранивайте доступ по IP к административным разделам, если это возможно.
- Делайте резервные копии папки data и конфигурационных файлов перед обновлением.
Типичные проблемы и решение
- Ошибка 403 при доступе: проверьте права на файлы и директивы AllowOverride/Require в виртуальном хосте.
- Certbot не может верифицировать домен: убедитесь, что DNS указывает на IP сервера и порт 80 не заблокирован.
- Apache не перезапускается: проверьте синтаксис конфигурации командой apachectl configtest и логи в /var/log/apache2/error.log.
Мини-методология установки (шаблон действий)
- Подготовка: резервная копия и проверка DNS.
- Установка базы (Apache/PHP).
- Развёртывание DokuWiki, права и тест на локальном хосте.
- Конфигурация виртуального хоста и проверка 80/443.
- Получение SSL и тест HTTPS.
- Настройка автопродления и финальные тесты.
Чеклист ролей
- Администратор сервера:
- Обновить систему.
- Установить Apache/PHP и Certbot.
- Настроить виртуальный хост и SSL.
- Владелец вики / контент-менеджер:
- Пройти установщик и создать структуру страниц.
- Настроить политики прав и бэкапы.
- DevOps:
- Настроить автоматизацию обновлений и мониторинг статуса сертификатов.
Быстрая памятка команд (cheat sheet)
- Обновление пакетов: apt-get update -y
- Установка Apache/PHP: apt-get install apache2 php php-gd php-xml php-json -y
- Скачивание DokuWiki: wget https://download.dokuwiki.org/src/dokuwiki/dokuwiki-stable.tgz
- Распаковка: tar -xvzf dokuwiki-stable.tgz -C /var/www/html/dokuwiki/ –strip-components=1
- Права: chown -R www-data:www-data /var/www/html/dokuwiki
- Certbot: certbot –apache -d your.domain
- Тест продления: certbot renew –dry-run
Короткий FAQ
Q: Нужно ли использовать именно Apache? A: Нет. DokuWiki поддерживает Apache и Nginx. Примеры в этой статье для Apache.
Q: Где хранятся данные DokuWiki? A: DokuWiki хранит данные в файловой системе в каталоге data внутри корня установки.
Q: Как восстановить сайт после сбоя? A: Восстановите резервную копию каталога data и конфигурационные файлы, затем проверьте права доступа.
Малый словарь терминов
- DokuWiki — простая вики-система на PHP, сохраняет данные в файлах.
- Certbot — клиент для получения сертификатов от Let’s Encrypt.
- VirtualHost — конфигурация Apache для хостинга сайта с конкретным доменом.
Решение: когда этот подход не подходит
- Нужна интеграция с реляционной БД — DokuWiki хранит данные в файлах, не в БД.
- Высоконагруженные сайты с большим количеством одновременных записей — тогда лучше оценить производительность и кэширование.
Итог и дальнейшие шаги
Поздравляю — после выполнения шагов у вас будет рабочая инсталляция DokuWiki с HTTPS. Рекомендуется:
- Настроить регулярные резервные копии каталога data.
- Настроить мониторинг сертификатов и доступности сайта.
- Ознакомиться с расширениями DokuWiki для поиска, ACL и бэкапа.
Если нужно, могу помочь с настройкой резервного копирования, переносом контента или конфигурацией Nginx.
Похожие материалы
Несколько аккаунтов Skype: Multi Skype Launcher
Журнал для работы: повысить продуктивность
Персональные звуки уведомлений на Android
Скачивание шоу Hulu для офлайн‑просмотра
Microsoft Start: персонализированная новостная лента