A-A+
Notice: unserialize()[function.unserialize]
自从帮客户转移了 ecshop 空间之后,网站就出现一连串的问题,今天又出现了了这样的错误提示:
Notice: unserialize() [function.unserialize]: Error at offset 159 of 647 bytes in \eshop\includes\lib_common.php on line 224
直接显示报错,最后夏日博客找到的原因原来是在转移过程中丢失了问题,也就是在上传到新空间的时候有些文章上传不完整导致的,只好再次上传,这次将整个文件打包上传上去,然后在线进行解压,问题终于解决了。
不过在谷歌上查询答案的时候,也发现了另外一个解决方法,不过跟我上面遇到的情况不太一样,不过在这里夏日博客还是要分享一下的,如果你的 ecshop 也遇到同样的问题,可以尝试一下下面的方法。
在lib_common.php大约604行找到如下代码:
- if (emptyempty($arr['integrate_code'])) { $arr
- ['integrate_code'] = 'ecshop'; // 默认的会员整合插件为 ecshop
- }
- write_static_cache('shop_config',
- $arr);
修改为:
- if (emptyempty($arr['integrate_code']))
- {
- $arr['integrate_code'] = 'ecshop'; // 默认的会员整合插件为 ecshop
- }
- if (!emptyempty($arr['integrate_config']) && EC_CHARSET == 'utf-8')
- { $arr['integrate_config'] = preg_replace('!s:(\d+):"(.*?)";!se',"'s:'.strlen('$2').':\"$2\";'",str_replace(' ','',$arr['integrate_config'])); } write_static_cache('shop_config', $arr);
修改之后还要进入 ecshop 后台清除一下缓存,现在再来刷新一下页面,看是否还会出现 lib_common.php on line 224 之类的错误。
,也就是在上传到新空间的时候有些文章上传不完整导致的,只好再次上传,这次将整个文件打包上传上去,然后在线进行解压,问题终于解决了。