如何使用Apache或Nginx在Ubuntu 16.04 / 17.04上安装MediaWiki
本教程将向您展示 如何在Ubuntu 16.04 / 17.04上安装MediaWiki。 MediaWiki是支持Wikipedia的后端软件。 它是免费的开源软件,是当今使用最广泛的Wiki软件。 MediaWiki的知名用户包括Wikipedia.org,wikia.com。
您可以使用MediaWiki创建自己的私有或公共Wiki。 MediaWiki具有为Wikipedia和其他Wiki网站创建的许多有用的扩展。
先决条件
MediaWiki是用PHP编写的程序。 要遵循本教程,首先您需要在Ubuntu 16.04 / 17.04服务器上安装LAMP或LEMP堆栈。 如果您尚未这样做,请查看以下教程之一:
- 如何在Ubuntu 16.04上安装Apache,MariaDB,PHP7(LAMP)
- 如何在Ubuntu 16.04上安装Nginx,MariaDB,PHP7-FPM(LEMP)
安装LAMP或LEMP后,请阅读以下说明以安装MediaWiki。
步骤1:下载MediaWiki
您可以通过两种方式下载MediaWiki:下载tarball或通过Git克隆存储库。 建议使用Git,因为它易于安装,并且以后可以更轻松地更新MediaWiki。
安装Git并将最新版本的MediaWiki克隆到您的系统中。
sudo apt install git git clone https://gerrit.wikimedia.org/r/p/mediawiki/core.git
目录名为 core
将被创建,您可以将其重命名为 mediawiki
。
mv core mediawiki
然后我们将该目录移动到 /var/www/
。
sudo mv mediawiki /var/www/
接下来,我们需要通过Composer安装外部依赖项。
sudo apt install composer cd /var/www/mediawiki/ composer install --no-dev
安装所有依赖项后,运行以下命令来设置Web服务器用户(www-data
)作为此目录的所有者。
sudo chown www-data:www-data /var/www/mediawiki/ -R
步骤2:建立资料库
使用以下命令登录MariaDB服务器。 您将需要输入MariaDB根密码。
mysql -u root -p
为MediaWiki创建数据库。 本教程为数据库命名 wikidb
,但您可以使用任何喜欢的名称。
CREATE DATABASE wikidb;
然后在MariaDB提示符下运行以下命令以创建数据库用户并向该用户授予特权。 更换 wikidb
, wikiuser
和 password
分别使用您的首选数据库名称,数据库用户名和用户密码。
GRANT ALL PRIVILEGES ON wikidb.* TO 'wikiuser'@'localhost' IDENTIFIED BY 'password';
接下来,刷新MariaDB特权并退出。
flush privileges; exit;
步骤3:设定Apache虚拟主机
在这一步中,我们将为MediaWiki创建一个Apache虚拟主机。 如果您使用Nginx,请跳到下面的Nginx部分。
为MediaWiki创建虚拟主机文件。
sudo nano /etc/apache2/sites-available/mediawiki.conf
复制以下文本并将其粘贴到文件中。 更换 wiki.your-domain.com
与您的实际域名。 不要忘记为该域名创建A记录。
<VirtualHost *:80> ServerAdmin [email protected] DocumentRoot /var/www//mediawiki/ ServerName wiki.your-domain.com <Directory /var/www/html/mediawiki/> Options FollowSymLinks AllowOverride All Order allow,deny allow from all </Directory> ErrorLog /var/log/apache2/your-domain.com-error_log CustomLog /var/log/apache2/your-domain.com-access_log common </VirtualHost>
保存并关闭文件。 然后启用此虚拟主机。
sudo a2ensite mediawiki.conf
重新加载Apache以使上述更改生效。
sudo systemctl reload apache2
设置Nginx服务器块
在下面为MediaWiki创建服务器阻止文件 /etc/nginx/conf.d/
目录。
sudo nano /etc/nginx/conf.d/mediawiki.conf
复制以下文本并将其粘贴到文件中。 更换 wiki.your-domain.com
与您的实际域名。 不要忘记为该域名创建A记录。
server { listen 80; server_name wiki.your-domain.com; root /var/www/mediawiki; index index.php; location / { try_files $uri $uri/ /index.php; } location ~ /.well-known { allow all; } location ~ /.ht { deny all; } location ~ .php$ { fastcgi_pass unix:/run/php/php7.0-fpm.sock; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; include snippets/fastcgi-php.conf; } }
保存并关闭文件。 然后测试Nginx配置。
sudo nginx -t
如果测试成功,请重新加载Nginx Web服务器。
sudo systemctl reload nginx
步骤4:运行基于Web的安装脚本
去 wiki.you-domain.com
在您的Web浏览器中启动基于Web的安装脚本。 请点击 设置维基 链接以启动安装向导。
接下来,选择用于MediaWiki安装和Wiki本身的语言。
然后,安装向导将检查服务器的环境,例如PHP扩展。
您可以使用以下命令安装所需的软件包。
sudo apt install php-mbstring php-json php-mysql php-curl php-intl php-gd texlive
如果您将Apache与PHP模块一起使用,则需要重新启动Apache才能使更改生效。
sudo systemctl restart apache2
刷新MediaWiki设置网页,然后转到下一步。 您将必须配置数据库设置。 选择MySQL作为“数据库类型”。 输入 localhost
数据库主机,并输入您先前创建的数据库的名称,以及数据库用户名和密码。
在下一步中,您可以选择数据库存储引擎和字符集。 建议选择默认设置。
然后输入您的Wiki名称并创建一个管理员帐户。
在“选项”页面中,您可以选择将Wiki设置为Open Wiki,需要创建帐户,仅授权编辑者和私有Wiki。 然后,您可以选择一个许可证。
请点击 Continue
开始安装Mediawiki。
在安装过程中将生成一个LocalSettings.php文件。 您需要下载此文件并将其放入 /var/www/mediawiki/
Ubuntu 16.04 / 17.04服务器的目录。 完成后,您将可以从以下位置访问新安装的MediaWiki http://wiki.your-domain.com
。
下载并启用矢量皮肤
要安装名为Vector的默认外观,请在/ var / www / mediawiki / skins /目录中运行以下命令。
cd /var/www/mediawiki/skins/ sudo git clone https://gerrit.wikimedia.org/r/mediawiki/skins/Vector
要启用此皮肤,请编辑 LocalSettings.php
文件。
sudo nano /var/www/mediawiki/LocalSettings.php
复制以下行并将其粘贴到文件末尾。
wfLoadSkin( 'Vector' );
保存并关闭文件。 然后刷新您的Wiki主页。
要创建一个术语页面,只需转到
wiki.your-domain.com/index.php/your-term
要么
wiki.your-domain.com/index.php?title=your-term
本教程介绍了如何在Ubuntu 16.04 / 17.04上安装MediaWiki。 希望对您有所帮助。