ubuntu16.04 安装media-wiki

    技术2022-07-11  92

    环境要求

    我这里使用的是ubuntu16.04+Mysql5.7.27+apache2+php7.0.33

    这里下载1.31.3版本的压缩包到机器上

    https://releases.wikimedia.org/mediawiki/1.31/mediawiki-1.31.3.tar.gz

    创建media wiki 要用到的数据库

    创建数据库wikidb

    create DATABASE wikidb;

    在wikidb创建用户wikiuser并设置密码:

    create user 'wiki'@'localhost' identified by 'wikitest'; create user 'wiki'@'127.0.0.1' identified by 'wikitest'; create user 'wiki'@'::1' identified by 'wikitest';

    给创建的用户赋予数据库的权限

    grant all privileges on wikidb.* to 'wiki'@'localhost' with grant option; grant all privileges on wikidb.* to 'wiki'@'127.0.0.1' with grant option; grant all privileges on wikidb.* to 'wiki'@'::1' with grant option;

    安装

    将下载的压缩包解压到web目录的media目录中 tar -zxvf mediawiki-1.31.3.tar.gz /var/www/media

    网页访问进行安装

    这里会提示要安装xml和mbstringphp扩展 使用apt install php-xml php-mbstring`安装即可

    点击‘set up the wiki’: 初次打开这个页面的时候是显示,set up the wiki,因为我这是第二次打开所以显示的是Complete the installation 选择语言 然后进入到‘欢迎使用MediaWiki’点击‘继续’ 配置数据库 选择Innob存储引擎 设置Wiki的名称和用户名密码:

    配置用户权限等 我这里配置的是,需要注册账号才能编辑

    启用文件上传 进入如下界面,点击继续 会进入

    再点继续,会进入如下界面,并自动下载LocalSettings.php

    将LocalSettings.php文件放入/var/www/media/目录下,然后重新进入

    成功安装

    优化media wiki

    修改Wiki Logo

    覆盖media/resources/assets/wiki.png即可

    去除底部powered by图标

    在LocalSettings.php文件末尾加入

    unset($wgFooterIcons['poweredby']);

    自定义皮肤

    可以在https://www.mediawiki.org/wiki/Category:All_skins下载皮肤使用,我这里下载的是DuskToDawn皮肤

    wget https://extdist.wmflabs.org/dist/skins/DuskToDawn-REL1_31-2d3a01c.tar.gz

    解压到media/skins目录下

    tar -xzf DuskToDawn-REL1_31-2d3a01c.tar.gz -C /var/www/media/skins

    LocalSettings.php文件加入

    wfLoadSkin( 'DuskToDawn' );

    并修改$wgDefaultSkin = "DuskToDawn";

    效果

    代码高亮插件

    参见https://www.mediawiki.org/wiki/Extension:SyntaxHighlight 下载到机器上

    wget https://extdist.wmflabs.org/dist/extensions/SyntaxHighlight_GeSHi-REL1_31-a7d04ae.tar.gz

    解压到media/extensions文件夹中

    tar -xzf SyntaxHighlight_GeSHi-REL1_31-a7d04ae.tar.gz -C /var/www/media/extensions

    LocalSettings.php中最后插入如下代码

    wfLoadExtension( 'SyntaxHighlight_GeSHi' );

    保存退出,查看效果

    启用WikiEditor富文本编辑器

    该版本media wiki 自带Wiki Editor编辑器

    LocalSettings.php中最后插入如下代码

    wfLoadExtension( 'WikiEditor' );

    保存退出

    可视化编辑器

    安装地址https://www.mediawiki.org/wiki/Extension:VisualEditor

    安装nodejs

    #debain 默认安装的nodejs 4.+版本 #Using Ubuntu curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash - sudo apt-get install -y nodejs #Using Debian, as root curl -sL https://deb.nodesource.com/setup_6.x | bash - apt-get install -y nodejs

    安装parsoid

    安装0.9.0的有问题

    v0.8.1 配置LocalSettings.php

    $wgVirtualRestConfig['modules']['parsoid'] = array( // URL to the Parsoid instance // Use port 8142 if you use the Debian package 'url' => 'http://localhost:8000', // Parsoid "domain", see below (optional) 'domain' => 'digq14n.club', // Parsoid "prefix", see below (optional) 'prefix' => 'localhost' );

    问题参考链接

    https://www.v2ex.com/t/453206

    https://www.mediawiki.org/wiki/Topic:Ua42lnptxq4056ki

    批量上传文件

    MsUpload,安装过程和上面是一样的,具体可以看https://www.mediawiki.org/wiki/Extension:MsUpload

    很好用,而且可以在写文章的时候直接拖拽图片,会自动上传。

    同样还有大量删除文件的插件 https://www.mediawiki.org/wiki/Extension:Nuke/zh 效果 上传就没问题了,如果上传图片后出现了如下错误:

    生成缩略图出错:/bin/bash: /usr/bin/convert: No such file or directory Error code: 127

    说明convert程序没有安装.安装下ImageMagick程序就行了

    apt install ImageMagick

    Media wiki迁移

    备份数据库

    数据库里面存储了文章内容

    mysqldump -uroot -p wikidb > wikidb.sql

    备份网站

    tar -czvf media.tar.gz /var/www/media/

    整理完后有如下文件

    wikidb.sql => wiki的数据库,包含用户信息,文章内容等

    media.tar.gz =>web目录

    在新的机器上运行如下命令

    mysql -uroot -p wikidb <wikidb.sql #导入数据库,前提是先在mysql中创建wiki数据库 tar -xvzf media.tar.gz #解压 rm media.tar.gz #删除压缩包 cd media #进入目录

    然后进入数据库,创建用户,及授权

    CREATE USER 'wiki'@'localhost' IDENTIFIED BY '123456'; CREATE USER 'wiki'@'127.0.0.1' IDENTIFIED BY '123456'; CREATE USER 'wiki'@'::1' IDENTIFIED BY '123456'; grant all privileges on wiki.* to 'root'@'localhost' with grant option; grant all privileges on wiki.* to 'root'@'127.0.0.1' with grant option; grant all privileges on wiki.* to 'wiki'@'::1' with grant option;

    修改后 然后就可以运行了,如果有问题就删除项目根目录下的LocalSettings.php,然后访问地址,重新安装一下就可以了,一两分钟就能装完

    Processed: 0.023, SQL: 9