WiKi
Раздел 1. Предварительные условия Перед началом убедитесь, что ваш сервер соответствует следующим требованиям:
Операционная система: Чистая установка Debian (например, Debian 12) или Ubuntu (например, Ubuntu 22.04 LTS). У вас должны быть права root или пользователя с доступом к sudo.
Аппаратные ресурсы: Рекомендуется минимум ~2 ГБ оперативной памяти и несколько ГБ свободного места на диске. (Конкретные требования зависят от объема вашей вики).
Сеть: Открыты порты 80 (HTTP) и 443 (HTTPS) в брандмауэре (ufw или iptables) и/или проброшены на роутере (если сервер за NAT).
Доменное имя: У вас есть зарегистрированный домен или поддомен (например, wiki.example.com), указывающий на IP-адрес этого сервера.
Раздел 2. Обновление системы Первым делом обновите список пакетов и саму систему до последних версий.
sudo apt update
sudo apt upgrade -y
Раздел 3. Установка веб-сервера Apache Установите Apache и модуль PHP для него.
sudo apt install apache2 libapache2-mod-php -y
sudo systemctl enable apache2
sudo systemctl start apache2
Проверьте, что Apache запущен и работает без ошибок:
sudo systemctl status apache2
Раздел 4. Установка PHP и необходимых расширений Установите PHP рекомендованной версии (на данный момент рекомендуется PHP 8.1, 8.2 или 8.3) и полный набор модулей, необходимых для работы MediaWiki.
sudo apt install -y php php-gd php-curl php-zip php-xml php-mbstring
php-mysql php-intl php-imagick php-bz2 php-bcmath php-gmp libmagickcore-dev
Примечание: Также могут понадобиться php-apcu (для локального кэширования) или php-fpm (если вы планируете использовать его вместо модуля Apache).
Настройка PHP.ini Откройте файл конфигурации PHP для Apache (путь будет отличаться в зависимости от версии PHP, например, /etc/php/8.2/apache2/php.ini) и задайте следующие рекомендуемые параметры:
max_execution_time = 360
post_max_size = 64M (или больше, если планируете загружать большие файлы)
upload_max_filesize = 64M (или больше, должно быть меньше или равно post_max_size)
memory_limit = 512M (минимум, рекомендуется 1G или больше)
Также убедитесь, что OPCache включен (параметры opcache.enable=1 и другие в /etc/php/8.x/mods-available/opcache.ini или /etc/php/8.x/apache2/php.ini).
Раздел 5. Установка и настройка базы данных (MariaDB) Установите сервер базы данных MariaDB.
sudo apt install mariadb-server -y
sudo systemctl enable mariadb
sudo systemctl start mariadb
Запустите скрипт безопасности, чтобы настроить пароль root, удалить анонимных пользователей и запретить удаленный вход root.
sudo mysql_secure_installation
Создание базы данных и пользователя для MediaWiki Зайдите в консоль MySQL под root-пользователем:
sudo mysql -u root -p
Выполните следующие SQL-команды, заменив StrongWikiPasswordHere на ваш надежный пароль:
CREATE DATABASE mediawiki CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
CREATE USER 'wikiuser'@'localhost' IDENTIFIED BY 'StrongWikiPasswordHere';
GRANT ALL PRIVILEGES ON mediawiki.* TO 'wikiuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Важно: Не используйте этот пароль в LocalSettings.php позже, веб-интерфейс установки попросит его для создания файла конфигурации.
Раздел 6. Скачивание и установка MediaWiki Перейдите в веб-корень сервера.
cd /var/www/html
Установите утилиты tar и gzip для распаковки.
sudo apt install tar gzip -y
Скачайте последнюю стабильную версию MediaWiki (ссылку всегда можно найти на официальном сайте, мы используем перенаправление на последнюю версию):
sudo wget https://releases.wikimedia.org/mediawiki/latest/mediawiki-latest.tar.gz
Распакуйте архив:
sudo tar -xzf mediawiki-latest.tar.gz
Переместите распакованные файлы в нужную директорию (например, /var/www/html/wiki) и удалите архив:
sudo mv mediawiki-* /var/www/html/wiki
sudo rm mediawiki-latest.tar.gz
Установите корректного владельца (пользователя веб-сервера www-data) и права доступа:
sudo chown -R www-data:www-data /var/www/html/wiki
sudo chmod -R 755 /var/www/html/wiki
Раздел 7. Настройка виртуального хоста Apache для MediaWiki Создайте новый файл конфигурации для вашего сайта, например, /etc/apache2/sites-available/wiki.conf, заменив your.domain.com на ваш реальный домен:
<VirtualHost *:80>
ServerName your.domain.com
DocumentRoot /var/www/html/wiki
<Directory /var/www/html/wiki/>
Options +FollowSymlinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
Активируйте созданный сайт и модули Apache, необходимые для работы MediaWiki (например, rewrite):
sudo a2ensite wiki.conf
sudo a2enmod rewrite headers env dir mime setenvif
sudo systemctl reload apache2
Раздел 8. Настройка HTTPS (SSL) Рекомендуется сразу настроить HTTPS. Самый простой и бесплатный способ — использовать сертификаты от Let’s Encrypt с помощью утилиты Certbot.
sudo apt install certbot python3-certbot-apache -y
sudo certbot --apache -d your.domain.com
Следуйте инструкциям на экране. Certbot автоматически получит сертификат, настроит Apache и предложит настроить автоматическое перенаправление с HTTP на HTTPS (рекомендуется выбрать этот вариант).
После завершения перезагрузите Apache:
sudo systemctl reload apache2
Раздел 9. Завершение установки через веб-интерфейс Откройте браузер и перейдите по адресу https://your.domain.com/wiki/mw-config/index.php. Вы увидите веб-интерфейс установки MediaWiki. Пройдите шаги установки: Выберите язык, примите условия лицензии, затем следуйте инструкциям:
- Системная проверка: Убедитесь, что все критические проверки пройдены (зеленые галочки).
- Подключение к базе данных:
- Тип базы данных: MariaDB/MySQL.
- Хост базы данных: localhost.
- Название базы данных: mediawiki (как создали на шаге 5).
- Имя пользователя базы данных: wikiuser (как создали на шаге 5).
- Пароль базы данных: Пароль, заданный вами (вместо StrongWikiPasswordHere).
- Адрес администратора: Оставьте пустым.
- Нажмите продолжить.
- Настройки базы данных: Оставьте настройки по умолчанию (хранилище, кодировка).
- Название вики и создание администратора: Укажите название вашей вики и создайте учетную запись администратора (имя, пароль, email).
- Дополнительная конфигурация: Просмотрите дополнительные настройки по желанию (например, выбор стандартного внешнего вида, включение загрузки файлов, права доступа). Убедитесь, что загрузка файлов включена, если планируете загружать картинки.
- Завершение установки: Нажмите кнопку «Установить MediaWiki».
Скачайте LocalSettings.php: По завершении установки веб-интерфейс предложит вам скачать файл LocalSettings.php. Загрузите LocalSettings.php на сервер: Используйте SCP, SFTP или создайте файл вручную на сервере:
- Введите команду: sudo nano /var/www/html/wiki/LocalSettings.php
- Вставьте содержимое скачанного файла.
- Сохраните файл (Ctrl+O, Enter) и закройте редактор (Ctrl+X).
Настройте права доступа к LocalSettings.php: Этот файл содержит пароль базы данных, поэтому обеспечьте его безопасность:
- sudo chown www-data:www-data /var/www/html/wiki/LocalSettings.php
- sudo chmod 600 /var/www/html/wiki/LocalSettings.php
Раздел 10. Доверенные домены и базовая оптимизация (рекомендуемые действия) Доверенные домены и кэширование MediaWiki автоматически использует домен, указанный при установке, в качестве доверенного. Дополнительная настройка обычно не требуется, если только вы не используете обратный прокси-сервер.
Для значительного повышения производительности Nextcloud рекомендуется настроить кэширование:
OPCache в PHP: Убедитесь, что OPCache включен и настроен в php.ini (шаг 4). MediaWiki автоматически воспользуется им.
Локальный кэш (APCu): Если вы установили php-apcu, вы можете включить его использование в LocalSettings.php, найдя строку $wgMainCacheType и установив значение CACHE_ACCEL (убедитесь, что в списке расширений также загружен php-apcu).
Распределенный кэш (Redis): Для больших инсталляций рекомендуется использовать Redis в качестве кэширующего бэкенда. Установите необходимые пакеты (sudo apt install redis-server php-redis -y, sudo systemctl enable redis-server, sudo systemctl start redis-server), а затем настройте доступ к Redis в LocalSettings.php, раскомментировав и настроив соответствующие строки (например, $wgMainCacheType = CACHE_REDIS;, $wgRedisCacheServers = [ 'localhost:6379' ];, убедившись, что $wgMainCacheType также раскомментировано и настроено на использование Redis).
Раздел 11. Проверка и запуск Убедитесь, что при переходе по вашему домену (https://your.domain.com) вы видите замочек SSL и HTTP автоматически перенаправляется на HTTPS. Убедитесь, что вы можете войти в систему под созданным администратором. Попробуйте создать тестовую страницу и загрузить тестовый файл (если включили загрузку). Проверьте логи Apache (/var/log/apache2/error.log) и логи MediaWiki (можно включить ведение логов в LocalSettings.php), если что-то работает не так. Обязательно выполните шаги по защите LocalSettings.php (шаг 9, пункт 5).