wangsisi 发表于 2011-6-3 16:16:23

MediaWiki升级中出现的常见问题及解决办法

Linux下Mediawiki升级步骤:
预备
阅读官方升级手册:http://www.mediawiki.org/wiki/Manual:Upgrading
阅读官方升级问答:http://www.mediawiki.org/wiki/FAQ#Upgrading
从官方网站下载mediawiki最新版本:http://www.mediawiki.org/wiki/Download
解压mediawiki软件包到服务器
阅读新版本的UPGRADE和RELEASE-NOTES文件内容
下载需要更新的扩展程序
解压到扩展程序所在的目录
修改共用配置文件中的新扩展程序(例如DynamicPageList)、新配置参数(例如$wgExternalLinkTarget = '_blank';)等
升级前
在Linux命令行下操作:
cd /usr/local/apache2/htdocs/ ; 来到apache站点根目录
mkdir newpath ; 建立新目录
cp -r mediawiki-1.15.0/* newpath ; 复制mediawiki 1.15.0的解压文件到新目录
cp oldpath/favicon.ico newpath ; 复制老目录中的favicon.ico到新目录
cp oldpath/skins/common/images/wiki.png newpath/skins/common/images/wiki.png ; 复制老目录中的wiki.png到新目录
vi newpath/LocalSettings.php ; 修改新目录配置文件,设置站点名称、数据库IP、用户名、密码、格式、站点语言、共用配置等
vi newpath/skins/MonoBook.php ; 修改新目录皮肤文件,设置Google Webmaster认证、AdManager设置、Analytics设置、搜索框等
升级中
在Linux命令行下操作:
vi oldpath/LocalSettings.php ; 修改老目录配置文件,增加$wgReadOnly="Read Only Now",老网站改为只读方式
cp newpath/AdminSettings.sample newpath/AdminSettings.php ; 复制生成AdminSetting.php文件供maintenance程序使用
vi newpath/AdminSettings.php ; 设置数据库用户名、密码
cd newpath/maintenance ; 进入升级程序所在的维护目录
php update.php ; 运行升级程序(如果遇到DPL扩展报错,也可以Web方式使用重新安装的办法来进行升级)
rm -fdr newpath/images ; 删除新目录中的images目录及其下面的所有子目录、文件
mv oldpath/images newpath ; 移动老目录中的images目录到新目录
vi /usr/local/apache2/conf/httpd.conf ; 修改Apache配置文件中站点对应的目录从老目录改为新目录
cd /usr/local/apache2/bin ; 进入Apache运行程序目录
./httpd -k restart ; 重启Apache程序,启用新目录中的mediawiki新版本
升级后
根据需要,将MediaWiki重新生成的首页恢复为以前的内容
用showJobs.php查看工作队列,runJobs.php进行运行处理
根据需要运行refreshLinks.php, rebuildrecentchanges.php等
复制、修改robots.txt
升级完成后全面检查新网站
重点检查扩展程序使用是否正常,是否需要跟踪升级
查看各菜单项目,检查一些语言设置文件是否变化
查看网站的各种代表性页面,及时发现版本之间的不同点
注意查看页面源文件的对比,包括是否正确使用文件缓存等
反复修改、检查,直到确认完全升级成功
升级中出现的主要问题以及解决办法:
1.大数据量网站升级后,数据库服务器负载明显过高,不过好像是短期的,没有持续
解决办法:硬件配置升级优化
2.动态页面列表生成有些与以前不同,namespace要从以前的英文namespace改用新的中文namespace
解决办法:按照新的规则修改需要变动的部分,例如:“namespace=Talk”改为“namespace=讨论”
3.一些使用网站内部url链接的地方不能省略index.php&title= ,也就是index.php参数命令有些不同
解决办法:修改以前的地方,例如调用AutoEdit的URL对<html></html>的使用有时与以前不同,特别是含有变量、Magic Words的时候,例如将{{fullurl:xx}}改为http://{{SERVERNAME}}/{{urlencode:xx}}以避免新版本中显示为链接
解决办法:修改以前的相关模板,例如“刷新”、“Iframe”等,调用其它Wiki网站中包含HTML的模板改为调用本地网站中模板
4.部分采用MyISAM数据库Latin1格式的老网站对应的繁体网站字符出错
解决办法:可以干脆把以前的MyISAM-Latin1导出,重新导入新建的InnoDB-Utf8数据库
5.调用模板较多的页面源代码中出现“NewPP limit report”
解决办法:减少调用的模板数量和层次
6.noarticletext页面出现顶部和底部多余的数字,不知道是什么意思
解决办法:可能是部分服务器设置中的Apache或者PHP有问题,在另外的服务器上是正常的,修改php.ini中的缓存4096->Off后解决
7.部分网站或者部分页面不生成file cache页面,修改cache目录为可写属性后依然如此
解决办法:有可能是目录读写权限或者拥有者权限的问题,尝试用chmod和chown来修改权限,另外新版本中包含DPL扩展的页面都不生成文件缓存,但可以通过设置让包含动态页面列表的页面也产生缓存
8.繁体克隆网站无法使用文件缓存
解决办法:有可能是目录读写权限或者拥有者权限的问题,尝试用chmod和chown来修改权限,另外需要修改includes/HTMLFileCache.php,将第88行中的“ && $ulang == $clang”去掉,以避免判断用户的语言设置是否和网站的语言设置一致,老版本1.10中是修改includes/Article.php中相似的地方
9.时区的显示与以前不同
解决办法:修改了设置办法后基本可以解决


页: [1]
查看完整版本: MediaWiki升级中出现的常见问题及解决办法

美国主机评测网站