Поиск по сайту:

Как установить MediaWiki на Ubuntu 22.04


Это руководство существует для этих версий ОС

  • Ubuntu 22.04 (Jammy Jellyfish)
  • Ubuntu 18.04 (Bionic Beaver)

На этой странице

  1. Необходимое условие
  2. Установка стека LAMP
  3. Настройка PHP для MediaWiki
  4. Настройка сервера базы данных MariaDB
  5. Загрузка исходного кода MediaWiki
  6. Настройка виртуального хоста Apache2 для MediaWiki
  7. Запуск установки MediaWiki
  8. Заключение

MediaWiki — это бесплатная вики-программа с открытым исходным кодом, на которой работают крупнейшие вики-сайты в Интернете, такие как Википедия и Викимедиа. Это чрезвычайно мощное, масштабируемое и расширяемое вики-программное обеспечение, которое предлагает многофункциональные реализации вики. MediaWiki — это веб-приложение, разработанное в 2002 году, написанное в основном на PHP и использующее СУБД, такую как MySQL и PostgreSQL, для хранения данных.

MediaWiki также можно использовать в качестве платформы для совместной работы и документации. Это поможет вам и вашей команде организовать документацию и сделать ее общедоступной. Он также поддерживает многоязычность, которую можно использовать для создания многоязычного сайта. И его очень настраиваемое программное обеспечение для вики, поэтому вы можете выбирать различные темы и редакторы для своей вики.

В этом руководстве мы покажем вам, как установить MediaWiki на сервер Ubuntu 22.04 со стеком LAMP (Linux, Apache2, MariaDB и PHP). Это руководство включает в себя базовую настройку MediaWiki, так что в итоге у вас будет полнофункциональный вики-сайт.

Предпосылка

Для этого примера нам потребуются следующие предварительные условия:

  • Сервер Ubuntu 22.04.
  • Пользователь без полномочий root с правами root/администратора.
  • Доменное имя указывало на IP-адрес сервера.

Установка стека LAMP

На первом этапе вы будете устанавливать базовый стек LAMP на сервер Ubuntu 22.04. В этом примере вы будете запускать MediaWiki с веб-сервером Apache2.

Прежде чем начать, вам необходимо установить PHP 7.4 на ваш сервер Ubuntu 22.04. Последняя версия MediaWiki требует PHP 7.4 и еще не готова для последней версии PHP 8.1. Поэтому вам нужно будет настроить сторонний репозиторий в вашей системе Ubuntu для установки PHP 7.4.

Выполните следующую команду, чтобы добавить репозиторий PHP 7.4 PPA в вашу систему. Эта команда также автоматически обновит все доступные репозитории в вашей системе.

sudo add-apt-repository ppa:ondrej/php -y

После того, как все будет завершено, запустите приведенную ниже команду apt, чтобы установить пакеты стека LAMP на сервер Ubuntu 22.04.

sudo apt install apache2 mariadb-server imagemagick libapache2-mod-php7.4 php7.4 php7.4-common php7.4-intl php7.4-xml php7.4-curl php7.4-gd php7.4-mbstring php7.4-mysql php7.4-apcu

Введите Y, чтобы подтвердить установку, и нажмите ENTER, чтобы продолжить. И начнется стек LAMP.

После завершения установки стека LAMP проверьте службы Apache2 и MariaDB с помощью следующей команды. И вы можете видеть, что служба Apache2 включена и работает.

sudo systemctl is-enabled apache2
sudo systemctl status apache2

Для службы MariaDB вы можете проверить, используя приведенную ниже команду.

sudo systemctl is-enabled mariadb
sudo systemctl status mariadb

А на следующем снимке экрана вы можете видеть, что служба MariaDB включена, которая будет автоматически запускаться при запуске системы. И текущий статус службы MariaDB работает.

Настройка PHP для MediaWiki

После установки пакетов LAMP Stack вы теперь будете настраивать PHP в соответствии с требованиями для установки MediaWiki. Это включает в себя настройку \max_upload_filesize\, \memory_limit\ и \max_execution_time\ вашей установки PHP.

Отредактируйте файл \/etc/php/7.4/apache2/php.ini\ с помощью редактора nano.

sudo nano /etc/php/7.4/apache2/php.ini

Измените значения по умолчанию для следующей конфигурации, как показано ниже.

upload_max_filesize = 80M
memory_limit = 512M
max_execution_time = 360

Сохраните и закройте файл, когда закончите.

Наконец, выполните приведенную ниже команду, чтобы перезапустить службу apache2 и применить новые изменения.

sudo systemctl restart apache2

Настройка сервера базы данных MariaDB

После настройки установки PHP пришло время настроить сервер MariaDB. Это включает в себя настройку корневого пароля и развертывание MariaDB, а также вам потребуется создать новую базу данных MariaDB и пользователя для установки MediaWiki.

Выполните следующую команду, чтобы начать настройку развертывания MariaDB.

sudo mysql_secure_installation

Теперь вам будут заданы следующие вопросы по конфигурациям MariaDB:

  • Установка MariaDB по умолчанию выполняется без пароля root, нажмите ENTER, чтобы продолжить.
  • Введите n, чтобы сохранить метод аутентификации по умолчанию и не использовать аутентификацию unix_socket (это для корневого пользователя MariaDB).
  • Введите Y, чтобы установить корневой пароль MariaDB, затем введите новый пароль и повторите.
  • Введите Y, чтобы удалить анонимного пользователя по умолчанию.
  • Введите Y, чтобы отключить удаленный вход для привилегированного пользователя MariaDB.
  • Введите Y, чтобы удалить базу данных по умолчанию \test\ из вашей установки MariaDB.
  • Наконец, снова введите Y, чтобы перезагрузить все права доступа к таблицам и применить новые изменения.

Теперь вы завершили базовую настройку развертывания MariaDB.

Затем войдите в оболочку MariaDB как пользователь root, используя следующую команду.

sudo mysql -u root -p

Теперь запустите следующие запросы MySQL/MariaDB, чтобы создать новую базу данных «mediawikidb» с пользователем «mediawiki» и паролем «mediawikipassdb». Эта база данных и пользователь будут использоваться для хранения данных MediaWiki.

CREATE DATABASE mediawikidb;
CREATE USER WITH GRANT OPTION;
FLUSH PRIVILEGES;

После этого выполните приведенный ниже запрос, чтобы проверить список доступа к базе данных для пользователя \[email \ с доступом к базе данных \mediawikidb\.

SHOW GRANTS FOR ;
quit

Загрузка исходного кода MediaWiki

Вы завершили базовую настройку стека LAMP для установки MediaWiki. Пришло время загрузить исходный код MediaWiki на ваш компьютер с Ubuntu.

Теперь перейдите в каталог \/var/www/\ и загрузите исходный код MediaWiki с помощью команды wget, как показано ниже. На данный момент последней версией MediaWiki является v1.38.1. И вы получите файл «mediawiki-1.38.1.tar.gz».

cd /var/www/
wget https://releases.wikimedia.org/mediawiki/1.38/mediawiki-1.38.1.tar.gz

Выполните следующую команду, чтобы извлечь исходный код MediaWiki \mediawiki-1.38.1.tar.gz\ и переименовать извлеченный каталог в \mediawiki\. Таким образом, каталог установки MediaWiki будет \/var/www/mediawiki\.

tar -xvzf mediawiki-*.tar.gz
mv mediawiki-*/ mediawiki/

Наконец, выполните следующую команду, чтобы изменить владельца каталога установки MediaWiki \/var/www/mediawiki\ на правильного пользователя \www-data\ и разрешение на \755\.

sudo chown -R www-data:www-data /var/www/mediawiki
sudo chmod 755 /var/www/mediawiki

Настройка виртуального хоста Apache2 для MediaWiki

Теперь вы будете настраивать виртуальный хост Apache2 для MediaWiki. В этом примере MediaWiki будет работать с доменным именем \wiki.hwdomain.io\ и включенным защищенным соединением SSL/HTTPS поверх виртуального хоста Apache2.

Прежде чем приступить к созданию конфигурации виртуального хоста, выполните следующую команду, чтобы включить перезапись модулей Apache2 и ssl.

sudo a2enmod rewrite ssl

Создайте новую конфигурацию виртуального хоста \/etc/apache2/sites-available/mediawiki.conf\ с помощью редактора nano.

sudo nano /etc/apache2/sites-available/mediawiki.conf

Добавьте следующую конфигурацию в файл. Также не забудьте изменить доменное имя и путь SSL-сертификатов.

<VirtualHost *:80>

    ServerName wiki.hwdomain.io
    ServerAdmin
        DocumentRoot /var/www/mediawiki

        # According MWiki Manual:Security
        php_flag register_globals off

        ErrorLog ${APACHE_LOG_DIR}/wiki.hwdomain.io.error.log
        CustomLog ${APACHE_LOG_DIR}/wiki.hwdomain.io.access.log combined

        SSLEngine on
        SSLCertificateFile /etc/letsencrypt/live/wiki.hwdomain.io/fullchain.pem
        SSLCertificateKeyFile /etc/letsencrypt/live/wiki.hwdomain.io/privkey.pem

        <FilesMatch "\.(cgi|shtml|phtml|php)$">
                SSLOptions +StdEnvVars
        </FilesMatch>

        <Directory /usr/lib/cgi-bin>
                SSLOptions +StdEnvVars
        </Directory>

        <Directory /var/www/mediawiki>
                Options None FollowSymLinks
                #Allow .htaccess
                AllowOverride All
                Require all granted
                <IfModule security2_module>
                        SecRuleEngine Off
                        # or disable only problematic rules
                </IfModule>
        </Directory>

        # According to MWiki Manual:Security
        <Directory /var/www/mediawiki/images>
                # Ignore .htaccess files
                AllowOverride None
                # Serve HTML as plaintext, don't execute SHTML
                AddType text/plain .html .htm .shtml .php .phtml .php5
                # Don't run arbitrary PHP code.
                php_admin_flag engine off
                # If you've other scripting languages, disable them too.
        </Directory>

        #According to MWiki Manual:Security
        <Directory /var/www/mediawiki/images/deleted>
                Deny from all
                AllowOverride AuthConfig Limit
                Require local
        </Directory>

    </VirtualHost>

</IfModule>

Сохраните и закройте файл, когда закончите.

Затем активируйте конфигурацию виртуального хоста \mediawiki.conf\, затем проверьте конфигурацию Apache2. Если вы получите выходное сообщение, такое как «Синтаксис в порядке», значит, ваша конфигурация Apache2 верна.

sudo a2ensite mediawiki.conf
sudo apachectl configtest

Наконец, выполните приведенную ниже команду, чтобы перезапустить службу Apache2 и применить новые изменения. Теперь вы завершили настройку стека LAMP для MediaWiki, и теперь вы готовы приступить к настройке MediaWiki.

sudo systemctl restart apache2

Запуск установки MediaWiki

Откройте веб-браузер и введите доменное имя установки MediaWiki (например, https://wiki.hwdomain.io/) в адресной строке. Щелкните ссылку \настроить вики\, чтобы начать настройку установки MediaWiki.

Выберите язык по умолчанию для вашей Wiki и нажмите \Продолжить\.

Теперь установщик MediaWiki проверит все требования для установки. Убедитесь, что на экране появилось сообщение \Среда проверена. Вы можете установить MediaWiki\, затем нажмите \Продолжить\.

Введите информацию о базе данных MariaDB и пользователе для вашей MediaWiki и нажмите «Продолжить» еще раз.

Что касается настроек базы данных, оставьте их по умолчанию и нажмите «Продолжить».

Теперь введите название вашей вики и введите данные администратора и пароль для вашей MediaWiki и нажмите \Продолжить\.

Что касается дополнительных опций/конфигураций MediaWiki, вы можете оставить их по умолчанию и нажать «Продолжить».

Нажмите \Продолжить\ еще раз, чтобы подтвердить и начать установку MediaWiki.

После завершения установки MediaWiki снова нажмите «Продолжить».

Теперь вам нужно загрузить файл \LocalSettings.php\ на локальный компьютер и загрузить его на сервер MediaWiki.

Другой вариант: вы можете создать новый файл \/var/www/mediawiki/LocalSettings.php\ с помощью редактора nano.

nano /var/www/mediawiki/LocalSettings.php

Добавьте скрипт из файла LocalSettings.php на свой локальный компьютер.

Теперь измените владельца файла на правильного пользователя \www-data\.

sudo chown www-data:www-data /var/www/mediawiki/LocalSettings.php

Теперь нажмите на ссылку \войти в вики\, чтобы увидеть результат установки.

И теперь вы получите индексную страницу вашей установки MediaWiki по умолчанию.

Теперь щелкните ссылку \Войти\ в правом верхнем углу, затем введите имя администратора и пароль для своей MediaWiki и нажмите \Войти\. И вы должны войти в MediaWiki.

Заключение

Поздравляем! теперь вы успешно установили MediaWiki на сервер Ubuntu 22.04 со стеком LAMP. При таком типе установки у вас есть MediaWiki, работающая безопасно с включенным HTTPS/SSL поверх вашей установки MediaWiki.