跳转到内容
主菜单
主菜单
移至侧栏
隐藏
导航
首页
最近更改
随机条目
特殊页面
站点
关于陋室
维基社群
新闻动态
联系我们
活跃用户
统计
参与
上传文件
待撰页面
新建页面
编辑入门
帮助
内容
分类树
所有页面
前缀索引
最多链入页面
热门页面
维护
MediaWiki 消息页
系统消息
小工具管理
小工具定义
用户组权限
界面
侧边栏
英文侧边栏
站点公告
匿名用户通知
公共样式表
公共脚本
陋室
搜索
搜索
中文
外观
登录
个人工具
登录
沙盒
查看“︁Help:MediaWiki安装指南”︁的源代码
帮助
讨论
不转换
不转换
简体
繁體
大陆简体
香港繁體
澳門繁體
大马简体
新加坡简体
臺灣正體
阅读
查看源代码
查看历史
工具
工具
移至侧栏
隐藏
操作
阅读
查看源代码
查看历史
常规
链入页面
相关更改
页面信息
Cargo数据
获取短链接
外观
移至侧栏
隐藏
←
Help:MediaWiki安装指南
因为以下原因,您没有权限编辑该页面:
您请求的操作仅限属于这些用户组的用户执行:
用户
、
自动确认用户
您可以查看和复制此页面的源代码。
这个页面介绍了本站的 MediaWiki 的安装笔记. == 服务器配置 == '''服务器提供商''': 腾讯云-轻量云(轻量应用服务器) '''地域和可用区''': 新加坡 | 新加坡一区 '''实例规格''': * '''CPU''': 2核 * '''内存''': 2GB * '''系统盘''': SSD云硬盘 50GB * '''流量包''': 1024GB/月(峰值带宽 30Mbps) == 服务器环境 == === 操作系统 === '''镜像名称''': Debian '''操作系统''': Debian 12.0 64bit <syntaxhighlight lang="bash"> cat /etc/os-release sudo apt update sudo apt upgrade </syntaxhighlight> === 服务器软件 === * '''宝塔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 2.4.62 (PHP+fpm)''' <syntaxhighlight lang="bash"> which apache2 apache2 -v </syntaxhighlight> * '''MySQL 5.7.44'''(MediaWiki最低要求5.7,官方推荐MongoDB) <syntaxhighlight lang="bash"> which mysql systemctl status mysql </syntaxhighlight> * '''PHP 8.2.27'''(MediaWiki最低要求8.1) <syntaxhighlight lang="bash"> which php php -v </syntaxhighlight> * '''phpMyAdmin 5.2'''(可通过宝塔安装) * '''ffmpeg 6.1'''(可通过宝塔安装) <syntaxhighlight lang="bash"> which ffmpeg ffmpeg -version </syntaxhighlight> === 依赖软件安装 === ==== php-wikidiff2 ==== <syntaxhighlight lang="bash"> apt-get install php-wikidiff2 find /usr/lib/ -name wikidiff2.so nano /www/server/php/82/etc/php.ini extension=/usr/lib/php/20220829/wikidiff2.so php -m | grep wikidiff2 </syntaxhighlight> <syntaxhighlight lang="php"> $wgDiffEngine = "wikidiff2"; $wgDiff3 = "/usr/bin/diff3"; </syntaxhighlight> ==== LilyPond ==== <syntaxhighlight lang="bash"> sudo apt update sudo apt install lilypond lilypond --version </syntaxhighlight> <syntaxhighlight lang="php"> wfLoadExtension( 'Score' ); $wgScoreTrim = true; $wgImageMagickConvertCommand = '/usr/bin/convert'; $wgScoreSafeMode = false; </syntaxhighlight> ==== Ghostscript ==== <syntaxhighlight lang="bash"> sudo apt update sudo apt install ghostscript gs --version </syntaxhighlight> ==== FluidSynth ==== <syntaxhighlight lang="bash"> sudo apt update sudo apt install fluidsynth fluidsynth --version </syntaxhighlight> ==== LAME ==== <syntaxhighlight lang="bash"> sudo apt update sudo apt install lame lame --version </syntaxhighlight> <syntaxhighlight lang="php"> $wgScoreLame = '/usr/bin/lame'; </syntaxhighlight> ==== php-luasandbox ==== <syntaxhighlight lang="bash"> sudo apt update sudo apt install php-luasandbox -y 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( 'Scribunto' ); $wgScribuntoEngineConf['luasandbox']['memoryLimit'] = 50 * 1024 * 1024; </syntaxhighlight> ==== Composer ==== <syntaxhighlight lang="bash"> composer update --no-dev </syntaxhighlight> == 服务器配置 == === Apache相关 === '''禁用防跨站攻击 (open_basedir)''' '''启用HTTPS防窜站''' '''TLS 1.0和1.1禁用''' '''伪静态配置''' <syntaxhighlight lang="apache"> RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] RewriteCond %{REQUEST_URI} !\.(css|js|png|jpg|jpeg|gif|ico|svg|woff|woff2|ttf|eot|less)$ [NC] RewriteCond %{REQUEST_URI} !^/load.php [NC] RewriteCond %{REQUEST_URI} !^/api.php [NC] RewriteRule ^w/(.*)$ /index.php?title=$1 [L,QSA] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ /index.php [L,QSA] </syntaxhighlight> <syntaxhighlight lang="php"> wfLoadExtension( 'UrlShortener' ); $wgUrlShortenerTemplate = '/r/$1'; $wgUrlShortenerServer = "false"; $wgUrlShortenerEnableQrCode = true; $wgUrlShortenerQrCodeShortenLimit = 200; $actions = [ 'view', 'edit', 'watch', 'unwatch', 'delete', 'revert', 'rollback', 'protect', 'unprotect', 'markpatrolled', 'render', 'submit', 'history', 'purge', 'info', ]; foreach ($actions as $action) { $wgActionPaths[$action] = "/w/$action/$1"; } $wgActionPaths['view'] = "/w/$1"; $wgArticlePath = $wgActionPaths['view']; </syntaxhighlight> === SSL === === Apache安全配置 === <syntaxhighlight lang="apache"> <Directory /www/wwwroot/lib/images/> Options -ExecCGI -Indexes AllowOverride None <FilesMatch "\.(php|php5|pl|py|jsp|asp|htm|html|cgi|sh)$"> Require all denied </FilesMatch> Header always set X-Content-Type-Options "nosniff" </Directory> </syntaxhighlight> === MySQL相关 === '''官方建议''': * 将所有表转为 InnoDB * 将所有表转为 utf8mb4 === PHP相关 === '''需要启用的插件'''(部分已默认启用) <syntaxhighlight lang="bash"> php -m </syntaxhighlight> <syntaxhighlight lang="php"> Core date libxml openssl pcre sqlite3 zlib bcmath ctype curl dom filter ftp gd gettext hash iconv intl json mbstring SPL session pcntl standard mysqlnd PDO pdo_mysql pdo_sqlite Phar posix random Reflection mysqli shmop SimpleXML soap sockets sodium sysvsem tokenizer xml xmlreader xmlwriter wikidiff2 luasandbox zip imagick fileinfo apcu exif calendar </syntaxhighlight> '''需要解除禁用的函数''' <syntaxhighlight lang="php"> proc_open popen putenv </syntaxhighlight> == 站点配置 == === 数据库信息安全 === '''LocalSettings.php''' <syntaxhighlight lang="php"> include('/www/wwwroot/lib.php'); </syntaxhighlight> '''lib.php''' <syntaxhighlight lang="php"> <?php $wgDBserver = 'localhost'; $wgDBname = ''; $wgDBuser = ''; $wgDBpassword = ''; ?> </syntaxhighlight> === 网站Logo === <syntaxhighlight lang="php"> $wgLogos = [ '1x' => "$wgResourceBasePath/Libary-4l.png", 'icon' => "$wgResourceBasePath/Libary-4l.png", ]; $wgFavicon = "$wgResourceBasePath/images/logos/Libary-4l.png"; $wgAppleTouchIcon = "$wgResourceBasePath/images/logos/Libary-4l.png"; $wgFooterIcons['logo'] = [ 'yourcustomicon' => [ 'src' => '/images/logos/Libary-1ll.png ', 'url' => $wgServer, 'alt' => 'Logo', 'height' => '31', 'width' => '68', ], ]; </syntaxhighlight> === 移动端皮肤 === <syntaxhighlight lang="php"> $wgDefaultMobileSkin = 'citizen'; </syntaxhighlight> === MediaWiki维护脚本 === <syntaxhighlight lang="bash"> php maintenance/run.php update.php --quick && \ php maintenance/run.php rebuildrecentchanges.php && \ php maintenance/run.php rebuildall.php && \ php maintenance/run.php rebuildtextindex.php && \ php maintenance/run.php refreshLinks.php && \ php maintenance/run.php cleanupTitles.php --dry-run </syntaxhighlight> == 参见 == [https://www.mediawiki.org/wiki/Download/zh] [https://www.bt.cn/new/download.html] [https://zh.wikipedia.org/wiki/Wikipedia:%E9%A6%96%E9%A1%B5] [https://www.mediawiki.org/wiki/Help:Formatting/zh] [https://www.mediawiki.org/wiki/Help:Magic_words/zh] [https://www.mediawiki.org/wiki/Help:Contents/zh] [https://www.mediawiki.org/wiki/Manual:Contents/zh] [https://www.huijiwiki.com/wiki/CommunityCenter]
此页面嵌入的页面:
Template:Navbox
(
查看源代码
)
Template:Navbox/styles.css
(
查看源代码
)
Template:PageToolsLink
(
查看源代码
)
Template:PageToolsLink/styles.css
(
查看源代码
)
Template:站点帮助文档
(
查看源代码
)
Module:Navbox
(
查看源代码
)
Module:PageToolsLink
(
查看源代码
)
返回
Help:MediaWiki安装指南
。
搜索
搜索
查看“︁Help:MediaWiki安装指南”︁的源代码
添加语言
添加话题