今天测试了论坛上传头像时出现
网上大部分的解决方案是配置UCenter
Access denied for agent changed 头像无法更新
配置文件:
config下config_global.php,config_ucenter.php
uc_server\data下的config.inc.php
具体可参考此处:Discuz配置文件的详细分析(搬家,UC通讯失败必看)
================如果你的情况跟我下面一样,可以根据我的思路来解决问题。==============================
先说下自己的配置情况
我在线上都只安装了一个Discuz,从来没安装过UC,所以,对于上面的解决方案,与我这种情况是区分开来的
所以我就自己动手测试了。
由于卓天的虚拟机的太垃圾,香港那边的服务器不能实现图片上传功能,之后换成他们美国那边的服务器,
这样很明显是拖慢了网站打开速度了,但没办法,国外较为稳定,个人看法。
而后,在新服务器重新安装了个X3版的GBK编码论坛,
把备份好的数据上传到新的数据库上面(这是原因所在),
杯具就发生了,就是不能正常上传头像,同样报出错误提示:Access denied for agent changed
之后经过排查,原因是在于,覆盖过来的数据库信息(关键是这个通信key值),与config_ucenter.php
上的UC_KEY没有对应上所导致(因为重新安装discuz后,文件自动生成了一遍,数值会不同)
而数据库上的表pre_ucenter_applications上的authkey的字段值(这个值是通信key值)没能跟
config_ucenter.php的UC_KEY对应上(因为数据库的数据是原程序生成的)
而导致上传不了头像。
只要把数值修改成相同就可以解决问题。