跳至内容

MediaWiki

简介

MediaWiki 是一款流行的开源 Wiki 软件引擎,为维基百科、Fandom 和 wikiHow 等网站提供支持。

先决条件和假设

以下是使用此过程的最低要求

  • 能够以 root 用户身份运行命令或使用 sudo 提升权限
  • 熟悉命令行编辑器。作者在此使用 vivim,但可以替换为您喜欢的编辑器

安装 Apache

Apache 是您将使用的 Web 服务器。使用以下命令进行安装:

dnf -y install httpd

接下来,打开相应的防火墙端口。

sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload

安装 PHP

要安装 PHP,您需要先安装 EPEL (Extra Packages for Enterprise Linux)。

dnf -y install epel-release && dnf -y update

您还需要 Remi 存储库。使用以下命令进行安装:

dnf install https://rpms.remirepo.net/enterprise/remi-release-10.rpm

然后安装 PHP 和所需的模块。

dnf install -y dnf install php84-php-fpm php84-php-intl php84-php-mbstring php84-php-apcu php84-php-curl php84-php-mysql php84-php-xml

使用以下命令启用 PHP:

systemctl enable --now php84-php-fpm.service

安装 MariaDB

您需要 MariaDB 来存储数据库。使用以下命令进行安装:

dnf install mariadb-server

接下来,启用 systemd 服务并运行设置向导。

systemctl enable --now mariadb
mysql_secure_installation

当被问及 root 密码时,请按 Enter 键。

Enter current password for root (++enter++ for none):

对于 unix_socket 身份验证,请回答 n

Switch to unix_socket authentication [Y/n] n

对于更改 root 密码,请回答 Y,然后输入所需的 root 密码。

Change the root password? [Y/n] Y
New password: 
Re-enter new password: 

删除匿名用户并禁止 root 远程登录。

Remove anonymous users? [Y/n] Y
...
Disallow root login remotely? [Y/n] Y

删除对测试数据库的访问权限并重新加载权限表。

Remove test database and access to it? [Y/n] Y
...
Reload privilege tables now? [Y/n] Y

使用以下命令登录 MariaDB:

mysql -u root -p

输入您之前创建的 root 密码。

进入 MariaDB 控制台后,为 MediaWiki 创建数据库。

MariaDB [(none)]> create database mediawiki;

接下来,创建 MediaWiki 用户。

MariaDB [(none)]> create user 'mediawiki'@'localhost' identified by 'nchauhan11';

授予 MediaWiki 数据库权限。

grant all privileges on mediawiki.* to 'mediawiki'@'localhost';

最后,使用以下命令刷新权限:

MariaDB [(none)]> flush privileges;

安装 MediaWiki

进入 /var/www/ 目录并下载 MediaWiki。

cd /var/www/
wget https://releases.wikimedia.org/mediawiki/1.44/mediawiki-1.44.0.zip

解压并移动 MediaWiki。

unzip mediawiki-1.44.0.zip
mv mediawiki-1.44.0/* html/

设置正确的 SELinux 权限。

chown -R apache:apache /var/www/html
semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/html(/.*)?"
restorecon -Rv /var/www/html

启用 Apache。

systemctl enable --now httpd

接下来,在浏览器中打开 http://your_ip(将 your_ip 替换为您的 IP 地址)。

MediaWiki Initial Setup

选择您的语言,然后点击 **Continue**。

MediaWiki Language Page

检查 PHP 配置是否正确,向下滚动并点击 **Continue**。

MediaWiki PHP Checks

现在,输入数据库信息如下:

  • Database host: localhost

  • Database name (no hyphens): mediawiki(或在 **MariaDB** 步骤中创建的数据库)

  • Database username:: mediawiki(或在 **MariaDB** 步骤中创建的用户)

  • Database password: 您在 **MariaDB** 步骤中创建的密码

MediaWiki Database Information

点击 **Continue**。

MediaWiki Database Access Settings

在 **MediaWiki version installation** 页面,输入以下内容:

  • URL host name: 您想要的 URL

  • Name of wiki: 您想要的 Wiki 名称

  • Administrator account/Your username: 您想要使用的管理员用户名

  • Administrator account/Password (again): 您想要使用的管理员密码

  • Administrator account/Email address: 管理员用户的电子邮件地址

可选地,您还可以选择 **Ask me more questions** 来微调 Wiki。为简单起见,只需选择 **I'm bored already, just install the wiki** 并点击 **Continue**。

MediaWiki Wiki Information

点击 **Continue** 安装 Wiki。

MediaWiki Install Step Part 1

MediaWiki 将设置数据库。完成后,点击 **Continue**。

MediaWiki Install Step Part 2

您的浏览器将下载一个 LocalSettings.php 文件。您将使用 sftp 将此文件上传到您的服务器。

例如,作者将使用他们的 Fedora 42 笔记本电脑上传此文件。操作方法如下:

sftp root@your_ip
(Enter password)
cd /var/www/html
put LocalSettings.php 

MediaWiki LocalSettings.php Step

最后,点击 **enter your wiki**。

Fresh MediaWiki Wiki

您现在已经拥有一个全新的 MediaWiki 安装。

结论

虽然 MediaWiki 以支持维基百科而闻名,但它作为内容管理系统也很有用,适用于需要编辑页面功能的用户。MediaWiki 是 Microsoft SharePoint 的一个不错的开源替代品。

作者:Neel Chauhan

贡献者:Steven Spencer