MediaWiki升级方法

MediaWiki升级方法,从1.33.0 到 1.34.0升级方法。

当然第一优先是看官方升级文档,https://www.mediawiki.org/wiki/Manual:Upgrading/zh,我估计还是有人会看蒙圈的,官方写的教程是针对所有的,对于专业人士一定看的明白,但是,对mediawiki不熟悉的人升级还是有点不方便。

升级之前一定要进行备份、备份、备份,重要的事说三遍!!!

MediaWiki安装、升级,中文版官方链接
https://www.mediawiki.org/wiki/Download/zh

升级mediawiki大的思路,首先是从官方下载最新的程序文件,这个链接即为目前为止最新的https://releases.wikimedia.org/mediawiki/1.34/mediawiki-1.34.0.tar.gz,当然如果能自己直接打开这个官方网站的,就不用这个链接下载了。

然后,解压覆盖原始的文件,遇到覆盖的就点击覆盖。

最后,进入SSH命令行,进入maintenance目录并执行升级脚本:

$ php update.php

然后,在浏览器打开验证,是否升级成功了,例如以打开https://www.iec.wiki/html/Special:Version为例子确认。

如果出现错误,大概率是因为扩展问题,建议先关闭LocalSettings.php里面所有的扩展,确认是否可以打开网址,然后再一个个进去打开扩展确认,从而排查是哪个扩展的问题。

Nginx环境PHP从7.2升级到7.3后MediaWiki报错

Nginx环境从PHP7.2升级到PHP7.3后MediaWiki报错,详细如下图所示

Warning: putenv() has been disabled for security reasons in /www/wwwroot/www.iec.wiki/includes/Setup.php on line 134
putenv.JPG

经过反复确认是php 函数putenv被禁用,直接删除上述被禁用函数列表中的putenv即可。

MediaWiki基本设置与手册

警告:不要使用文档编辑器(例如记事本,文本编辑其他或将字节顺序标记添加至文件的字幕:编辑器)编辑的LocalSettings.php。这会破坏您维基的PHP运行时。请改用代码编辑器,例如Vim的,Notepad ++或Atom。它们会正确处理文件编码。它们也可以用于修复之前被文档编辑器破坏的文件。

MediaWiki手册:LocalSettings.php设置
https://www.mediawiki.org/wiki/Manual:LocalSettings.php/zh

MediaWiki手册:常见问题
https://www.mediawiki.org/wiki/Manual:FAQ/zh

MediaWiki统计代码安装

统计代码安装位置
MediaWiki:Common.js

如果是百度统计,则需要注意如下:
1、通过js文件调用的方式安装统计代码,由于无法直接在网站页面中找到统计代码,会提示“未检测到代码”,这属正常现象。
2、需要手工检查代码安装正确性。
3、如在JS文件中调用统计分析代码,请直接去掉以下代码首尾的,后,放入JS文件中即可。所以,用MediaWiki:Common.js方法放入百度统计代码,则需要去掉统计代码的
4、如请将代码添加到网站全部页面的标签前,例如在header.htm类似的页头模板页面中安装,以达到一处安装,全站皆有的效果。则不要去掉统计代码的

MediaWiki静态化

宝塔面板 + Nginx
1、vhost上配置重定向,准确路径为/www/server/panel/vhost/nginx找到对应的网站文件,如www.iec.wiki.conf

location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg)$ {
        try_files $uri /index.php;
        expires max;
        log_not_found off;
    }

    location = /_.gif {
        expires max;
        empty_gif;
    }

    location ^~ /cache/ {
        deny all;
    }

    location /dumps {
        root /var/www/mediawiki/local;
        autoindex on;
    }
  location ~ /\.ht {
    deny all;
  }
      location / {
        try_files $uri $uri/ @rewrite;
    }

    location @rewrite {
            rewrite ^/([^?]*)(?:\?(.*))? /index.php?title=$1&$2 last;
    }


#一键申请SSL证书验证目录相关设置
location ~ \.well-known{
    allow all;
}

 location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg)$ {
    try_files $uri /index.php;
    expires max;
    log_not_found off;
}

location = /_.gif {
    expires max;
    empty_gif;
}

location ^~ /cache/ {
    deny all;
}

location /dumps {
    root /var/www/mediawiki/local;
    autoindex on;
}
location ~ /\.ht {
deny all;
}
  location / {
    try_files $uri $uri/ @rewrite;
}

location @rewrite {
rewrite ^/([^?]*)(?:\?(.*))? /index.php?title=$1&$2 last;
  
}   









—————————————————————————————————-
Rewrite.png

2,

代码

if ($server_port !~ 443){

rewrite ^(/.*)$ https://$host$1 permanent;

}

修改为

    #301-START
        if ($host ~ '^emc.wiki'){
r            eturn 301 https://www.emc.wiki$request_uri;
        }
    #301-END

3、配置文件localsettings.php添加如下代码

# 静态化
$wgScriptPath = "";
$wgArticlePath = "/wiki/$1";
$wgVariantArticlePath = "/$2/$1";
$wgUsePathInfo  = true;