Help:MediaWiki安装指南:修订间差异
删除的内容 添加的内容
小 添加模板 |
修改内容 |
||
第1行:
这个页面介绍了本站的 [[mw:Download|MediaWiki]] 的安装笔记.
== 服务器配置 ==
'''服务器提供商''': [https://cloud.tencent.com/ 腾讯云]-轻量云(轻量应用服务器)
'''地域和可用区''': 新加坡 | 新加坡一区
'''实例规格''':
* '''CPU''': 2 核
* '''内存''': 2GB
* '''系统盘''': SSD 云硬盘 50GB
* '''流量包''': 1024GB/月(峰值带宽 30Mbps)
== 服务器环境 ==
=== 操作系统 ===
'''镜像名称''': [https://www.debian.org/distrib/ Debian]
'''操作系统''': Debian 12.0 64bit
第23行 ⟶ 第28行:
=== 服务器软件 ===
* '''[https://www.bt.cn/new/download.html 宝塔Linux面板]''' : 正式版 9.4.0
<syntaxhighlight lang="bash">
wget -O install_panel.sh https://download.bt.cn/install/install_panel.sh && bash install_panel.sh ed8484bec
</syntaxhighlight>
* '''Apache [https://httpd.apache.org/download.cgi httpd] 2.4.62 (PHP+fpm)'''
<syntaxhighlight lang="bash">
which apache2
apache2 -v
</syntaxhighlight>
* '''[https://dev.mysql.com/downloads/windows/installer/ MySQL 5.7.44]'''(MediaWiki 最低要求 5.7,大内存机器首选 8.0+,官方推荐 MongoDB)
<syntaxhighlight lang="bash">
which mysql
systemctl status mysql
</syntaxhighlight>
* '''[https://www.php.net/downloads.php PHP] 8.2.27'''(MediaWiki 最低要求 8.1)
<syntaxhighlight lang="bash">
which php
php -v
</syntaxhighlight>
* '''[https://www.phpmyadmin.net/downloads/ phpMyAdmin] 5.2'''(可通过宝塔安装)
== 服务器依赖 ==
=== php-[[mw:Wikidiff2|wikidiff2]] ===
<syntaxhighlight lang="bash">
apt-get install php-wikidiff2
第58行 ⟶ 第65行:
php -m | grep wikidiff2
</syntaxhighlight>
<syntaxhighlight lang="php">
$wgDiffEngine = "wikidiff2";
第63行 ⟶ 第71行:
</syntaxhighlight>
=== php-[https://www.mediawiki.org/wiki/LuaSandbox luasandbox] ===
<syntaxhighlight lang="bash">
sudo apt update
sudo apt install
find /usr/lib/php/ -name "luasandbox.so"
nano /www/server/php/82/etc/php.ini
extension=/usr/lib/php/20220829/luasandbox.so
php -m | grep luasandbox
</syntaxhighlight>
<syntaxhighlight lang="php">
wfLoadExtension( '
$wgScribuntoEngineConf['luasandbox']['memoryLimit'] = 50 * 1024 * 1024;
</syntaxhighlight>
=== [https://ffmpeg.org/download.html ffmpeg] 6.1(可通过宝塔安装) ===
<syntaxhighlight lang="bash">
which ffmpeg
ffmpeg -version
</syntaxhighlight>
=== [https://getcomposer.org/download/ Composer] ===
<syntaxhighlight lang="bash">
composer update --no-dev
</syntaxhighlight>
== MediaWiki 插件依赖 ==
=== [[mw:Extension:EasyTimeline|EasyTimeline]] ===
==== [https://ploticus.sourceforge.net/doc/download.html Ploticus] ====
<syntaxhighlight lang="bash">
sudo apt update
sudo apt install
</syntaxhighlight>
====
<syntaxhighlight lang="bash">
sudo apt update
sudo apt install
perl -v
</syntaxhighlight>
<syntaxhighlight lang="php">
$
$wgTimelinePerlCommand = "/usr/bin/perl";
$wgTimelineFontDirectory = "/usr/share/fonts/truetype/freefont";
$wgTimelineFontFile = 'ascii';
</syntaxhighlight>
==== [https://lilypond.org/ LilyPond] ====
<syntaxhighlight lang="bash">
sudo apt update
sudo apt install
lilypond --version
</syntaxhighlight>
==== [https://www.ghostscript.com/releases/index.html Ghostscript] ====
<syntaxhighlight lang="bash">
sudo apt update
sudo apt install ghostscript
gs --version
</syntaxhighlight>
==== php-ImageMagick ====
==== [https://www.fluidsynth.org/download/ FluidSynth] ====
<syntaxhighlight lang="bash">
sudo apt update
sudo apt install fluidsynth
fluidsynth --version
</syntaxhighlight>
<syntaxhighlight lang="php">
$wgScoreTrim = true;
$wgImageMagickConvertCommand = '/usr/bin/convert';
$wgScoreSafeMode = false;
$wgScoreLame = '/usr/bin/lame';
</syntaxhighlight>
=== [[mw:Extension:PdfHandler|PdfHandler]] ===
==== Ghostscript ====
==== php-imagemagick ====
==== [https://pypi.org/project/poppler-utils/#files poppler-utils] ====
<syntaxhighlight lang="bash">
sudo apt update
sudo apt install poppler-utils
pdftotext -v
</syntaxhighlight>
<syntaxhighlight lang="php">
$wgPdfProcessor = '/usr/bin/gs';
$wgPdfPostProcessor = $wgImageMagickConvertCommand;
$wgPdfInfo = '/usr/bin/pdfinfo';
$wgPdftoText = '/usr/bin/pdftotext';
</syntaxhighlight>
== 服务器配置 ==
=== Apache 相关 ===
* '''
* '''启用''' HTTPS 防窜站
* '''禁用''' TLS 1.0 和 1.1
'''伪静态配置'''
<syntaxhighlight lang="apache">
RewriteEngine On
第137行 ⟶ 第205行:
RewriteRule ^(.*)$ /index.php [L,QSA]
</syntaxhighlight>
<syntaxhighlight lang="php">
wfLoadExtension( 'UrlShortener' );
$wgUrlShortenerTemplate = '/r/$1';
$wgUrlShortenerServer = "false";
$wgUrlShortenerEnableQrCode = true;
$wgUrlShortenerQrCodeShortenLimit = 200;
$actions = [
'view',
第162行 ⟶ 第229行:
'info',
];
foreach ($actions as $action) {
$wgActionPaths[$action] = "/w/$action/$1";
}
$wgActionPaths['view'] = "/w/$1";
$wgArticlePath = $wgActionPaths['view'];
第173行 ⟶ 第238行:
=== SSL ===
=== Apache 安全配置 ===
<syntaxhighlight lang="apache">
<Directory /www/wwwroot/lib/images/>
第185行 ⟶ 第251行:
</syntaxhighlight>
=== MySQL 相关 ===
'''官方建议''':
* 将所有表转为
* 将所有表转为 <code>utf8mb4</code>
=== PHP相关 ===
'''需要启用的插件'''(部分插件已默认启用)
<syntaxhighlight lang="bash">
php -m
第201行 ⟶ 第271行:
'''需要解除禁用的函数'''
<syntaxhighlight lang="php">
proc_open
第208行 ⟶ 第279行:
== 站点配置 ==
=== 数据库信息安全 ===
<code>LocalSettings.php</code>
<syntaxhighlight lang="php">
include('
</syntaxhighlight>
<syntaxhighlight lang="php">
<?php
第224行 ⟶ 第299行:
</syntaxhighlight>
=== 网站 Logo ===
<syntaxhighlight lang="php">
$wgLogos = [
第246行 ⟶ 第322行:
=== 移动端皮肤 ===
<syntaxhighlight lang="php">
$wgDefaultMobileSkin = 'citizen';
</syntaxhighlight>
=== MediaWiki 维护脚本 ===
<syntaxhighlight lang="bash">
php maintenance/run.php update.php --quick && \
第259行 ⟶ 第337行:
php maintenance/run.php cleanupTitles.php --dry-run
</syntaxhighlight>
{{Template:站点帮助文档}}
| |||