如何在 Debian 12 上安装 MediaWiki

如何在 Debian 12 上安装 MediaWiki

MediaWiki 是一款开源 wiki 软件,被维基百科和维基媒体等最大的 wiki 网站使用。它是一款免费的 wiki 软件,可用作协作和文档平台。它是一款功能强大、可扩展且功能丰富的 wiki 实现。

本教程将向您展示如何在 Debian 12 服务器上使用 LAMP Stack(Apache、MariaDB 和 PHP)安装 MediaWiki。此外,我们还将向您展示如何通过 Certtbot 和 Letsencrypt 使用 HTTPS 保护 MediaWiki。

先决条件

开始之前,请确保您已准备好以下物品:

  • Debian 12 服务器。
  • 具有管理员权限的非 root 用户。
  • 域名指向服务器IP地址。

安装 LAMP

MediaWiki 是一款基于 PHP 的开源软件,以 MySQL/MariaDB 作为数据存储。目前,MediaWiki 的当前稳定版本 (1.41) 至少需要 PHP 7.3.4 或更高版本和 MariaDB 10.3.0。至于 Web 服务器,您可以使用 Apache 或 Nginx。

在本节中,您将安装用于运行 MediaWiki 安装的 LAMP Stack(Apache、MariaDB 和 PHP)。

首先,使用以下命令更新您的 Debian 存储库。

sudo apt update

存储库更新后,使用以下命令安装 LAMP Stack 依赖项。输入 Y 确认安装。

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

安装 deps

安装完成后,验证 Apache 和 MariaDB 服务以确保两个服务都在运行。

使用以下命令验证 Apache Web 服务器。如果启用了输出,则确认 Apache 已启用并将在启动时自动启动。运行时,您将看到输出处于活动状态(正在运行)。

sudo systemctl is-enabled apache2
sudo systemctl status apache2

验证 apache2

接下来,使用以下命令验证 MariaDB 数据库服务器。输出应该类似,输出 enabled 确认 MariaDB 已启用,输出 active (running) 确认 MariaDB 正在运行。

sudo systemctl is-enabled mariadb
sudo systemctl status mariadb

验证 Mariadb

最后,使用以下命令验证 PHP 版本并列出启用的模块。您将看到 Debian 服务器上安装了 PHP 8.2。

php -v
php -m

验证 php

配置 PHP

安装 LAMP Stack 后,您将通过编辑 php.ini 文件并更改 MediaWiki 的一些默认参数来配置您的 PHP 安装。

要配置 PHP,请使用以下 nano 编辑器命令打开 PHP 配置 /etc/php/8.2/apache2/php.ini。

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

使用以下内容更改默认配置,并确保根据当前环境调整 date.timezone 和 memory_limit。

date.timezone = Europe/Amsterdam
upload_max_filesize = 80M
memory_limit = 512M
max_execution_time = 360

保存并退出文件。

现在运行以下命令来重新启动 Apache 服务并应用您的更改。

sudo systemctl restart apache2

配置 MariaDB 服务器

配置完 PHP 后,下一步是保护 MariaDB 服务器并为 MediaWiki 创建新的数据库和用户。在此示例中,您将使用命令行 mariadb-secure-installation 保护 MariaDB 服务器,并通过 MariaDB 客户端创建新的数据库和用户。

为了保护 MariaDB 服务器安装,请运行下面的 mariadb-secure-installation 命令。

sudo mariadb-secure-installation

现在输入 Y 接受或输入 n 拒绝 MariaDB 服务器上的新配置:

  • 默认安装的 MariaDB 没有密码。当提示输入密码时按 ENTER。
  • 现在输入 Y 来设置 MariaDB 根密码。然后,输入 MariaDB 的新密码并重复该密码。
  • 输入 Y 从您的 MariaDB 安装中删除匿名用户。
  • 当提示禁用 MariaDB 根用户的远程登录时再次输入 Y。
  • 输入 Y 从 MariaDB 中删除默认数据库测试。
  • 最后,输入 Y 重新加载表权限并应用新的更改。

确保 MariaDB 服务器部署安全后,使用下面的 mariadb 命令登录 MariaDB 服务器。出现提示时输入您的 MariaDB 根密码。

sudo mariadb -u root -p

现在运行以下查询来为 MediaWiki 创建新的 MariaDB 数据库和用户。在此示例中,您将创建一个新的数据库 mediawikidb,一个用户 mediawiki,密码为 mediawikipassdb。您可以使用您的凭据调整以下内容。

CREATE DATABASE mediawikidb;
CREATE USER mediawiki@localhost IDENTIFIED BY 'mediawikipassdb';
GRANT ALL ON mediawikidb.* TO mediawiki@localhost WITH GRANT OPTION;
FLUSH PRIVILEGES;

创建数据库和用户

接下来,运行以下查询来验证 MariaDB 用户 mediawiki 的权限。确保用户 mediawiki 可以访问数据库 mediawikidb。

SHOW GRANTS FOR mediawiki@localhost;

最后,完成后输入 quit 退出 MariaDB。

检查用户权限

下载MediaWiki源代码

现在已安装并配置了依赖项,您可以安装 MediaWiki。MediaWiki 有多个版本:稳定版、旧版和 LTS。在本例中,您将安装最新的稳定版 MediaWiki 1.41。

转到 /var/www 目录并通过下面的 wget 命令下载 MediaWiki 源代码。请务必访问 MediaWiki 下载页面以获取最新版本。

cd /var/www/
wget https://releases.wikimedia.org/mediawiki/1.41/mediawiki-1.41.0.tar.gz

下载后,使用以下命令提取源代码。然后,将提取的目录重命名为 mediawiki。因此,MediaWiki 的 DocumentRoot 目录将位于 /var/www/mediawiki。

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

最后,将 /var/www/mediawiki 目录的所有权更改为用户 www-data,并将权限更改为 0755。

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

设置Apache虚拟主机

现在您已经下载了 MediaWiki 源代码,您将在本节中创建一个新的 Apache 虚拟主机文件来运行 MediaWiki。因此,请确保您配备了指向服务器 IP 地址的域名。对于生产,请购买公共域名,或者您也可以使用本地域名。

在开始之前,请使用以下命令启用 Apache 重写模块。

sudo a2enmod rewrite

现在使用下面的 nano 编辑器命令创建一个新的 Apache 虚拟主机配置 /etc/apache2/sites-available/mediawiki.conf。

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

插入以下配置并确保使用您的域名以及访问和错误日​​志的路径更改 ServerName 选项。



ServerName wiki.hwdomain.io

ServerAdmin [email protected]
DocumentRoot /var/www/mediawiki

ErrorLog /var/log/apache2/wiki.hwdomain.io_error.log
CustomLog /var/log/apache2/wiki.hwdomain.io_access.log combined


Options FollowSymlinks
AllowOverride All
Require all granted


保存文件并退出编辑器。

接下来,激活虚拟主机文件 mediawiki.conf,并使用以下命令验证您的 Apache 语法。如果您的 Apache 语法正确,您将看到 Syntax OK 之类的输出。

sudo a2ensite mediawiki.conf
sudo apachectl configtest

最后,重新启动 Apache Web 服务器以应用 MediaWiki 的新虚拟主机。重新启动后,您的 MediaWiki 安装就绪。

sudo systemctl restart apache2

设置 apache vhost

使用 HTTPS 保护 MediaWiki

现在您已经为 MediaWiki 创建了 Apache 虚拟主机配置,让我们通过 Certbot 和 letsencrypt 使用 HTTPS 保护您的安装。这仅适用于您使用公共域的情况,但如果您使用本地域,您可以生成自签名证书并手动应用 HTTPS。

使用以下命令安装 Certbot 和 Certbot Apache 插件。输入 Y 确认安装。

sudo apt install certbot python3-certbot-apache

安装完成后,运行下面的 certbot 命令为您的 MediaWiki 域名生成 SSL/TLS 证书。确保使用您的信息更改域名和电子邮件地址。

sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d wiki.hwdomain.io

该过程完成后,您的证书将在 /etc/letsencrypt/live/domain.com 目录中可用,同时您的虚拟主机也配置了 HTTPS。

安装 MediaWiki

打开您喜欢的 Web 浏览器并访问您的域名,例如 http://wiki.hwdomain.io/。如果一切顺利,您应该会看到 MediaWiki 欢迎页面。单击设置 wiki 链接。

设置 wiki

选择您的 MediaWiki 的默认语言,然后单击继续。

选择语言

对于环境检查,请确保您的系统符合 MediaWiki 要求。然后再次单击继续。

环境检查

选择数据库为 MariaDB,并输入您的名称、用户和密码。然后单击“继续”继续。

数据库配置

接下来,输入您的 MediaWiki 管理员用户名、电子邮件和密码,然后单击继续。

设置管理员

对于其他设置,请选择要使用的默认主题,然后单击“继续”继续安装。

默认设置

单击“继续”确认 MediaWiki 安装。

确认安装

完全的

安装完成后,文件 LocalSettings.php 将自动下载到您的本地计算机,您将看到一条指令,要求将文件上传到您的 MediaWiki 安装目录。

安装完成

返回您的终端并运行以下命令来创建一个新的文件 LocalSettings.php。

sudo -u www-data nano /var/www/mediawiki/LocalSettings.php

打开您下载的文件 LocalSettings.php,然后将 PHP 代码复制并粘贴到您的服务器中。然后保存文件并退出。

返回到您的网页浏览器并点击链接进入 wiki。您将看到已安装的 MediaWiki 的默认主页。

mediawiki主页

结论

恭喜您现在已经在 Debian 12 服务器上成功安装了 MediaWiki。您已经使用 LAMP Stack(Apache、MariaDB 和 PHP)安装了 MediaWiki,并使用 Letsencrypt 的 HTTPS 保护了 MediaWiki。

资讯来源:由0x资讯编译自HOWTOFORGE,版权归作者所有,未经许可,不得转载

资讯来源:由a0资讯编译自THECOINREPUBLIC。版权归作者A0资讯所有,未经许可,不得转载

上一篇 2024年 5月 31日
下一篇 2024年 5月 31日

相关推荐