之前由 Piwik 0.4.0 升至 0.45 至 0.5 选择自动在线升级的时候皆报错:
Incompatible archive: PCLZIP_ERR_BAD_FORMAT (-10) : Unable to find End of Central Dir Record signature
解决方法:修改 core/Piwik.php
大概是 980 行 (我使用VIM打开显示的是 978 行)
修改方式如下:
找到:
return self::sendHttpRequestBy(self::getTransportMethod(), $aUrl, $timeout, $userAgent, $destinationPath, $followDepth);
###############################
修改为:
return self::sendHttpRequestBy(self::getTransportMethod(), $aUrl, $timeout, $userAgent, $file, $followDepth);
但 Piwik 0.5 升级至 0.5.1 的时候会报相同的错误,而且仅仅修改以上一行无果,需要再改动多一行。
第 983 行
static public function sendHttpRequestBy($method = ’socket’, $aUrl, $timeout, $userAgent = null, $destinationPath = null, $file = null, $followDepth = 0)
修改后:
static public function sendHttpRequestBy($method = ’socket’, $aUrl, $timeout, $userAgent = null, $file = null, $followDepth = 0)
保存修改后点击自动在线更新即可。
但自 0.5 版本起,使用 IE 浏览首页,部分 Flash 出错无法正常访问,信息显示为:
Open Flash Chart
JSON Parse Error [Syntax Error]
Error at character 0, line 1:
0:
使用 Firefox 以及 Google 浏览器确一齐正常,还有待解决。


