- 工作时间:周一至周六 8:30-17:00 值班18:00-22:00
-
鸿茂传媒经营理念
以客户的需求为出发点
-
腾讯云/阿里云/华为云机房
提供安全稳定的云服务器空间
-
16年运维技术经验
提供专业的1V1人工技术服务
解决discuz 3.4强制上传头像无法使用(一直提示需要上传头像)的问题
本次问题是:开启了强制头像上传,即便上传了头像,依旧说没有权限发表,请上传头像。
主要原因在于和uc_server的通讯,在uc_server里面显示通讯成功,但这并不一定准确(里面原因非常复杂),而且网站开启了https,所以原因更复杂了。
问题就出在了头像获取上,在uc_client/client.php中,找到
$path = $matches['path'] ? $matches['path'].($matches['query'] ? '?'.$matches['query'] : ''):'/';
下面增加:
$matches['port'] = !empty($matches['port'])&&$scheme=='https' ? $matches['port'] : 443;
然后找到:
if(!$fp = @fsocketopen(($ip ? $ip : $host), $port, $errno, $errstr, $timeout)) {
在修改为:
if($port=='443'){$temp = 'ssl://';}else{$temp = 'http://';}if(!$fp = @fsocketopen($temp.($ip ? $ip : $host), $port, $errno, $errstr, $timeout)) {
至此应该修复了该问题了,如果还没修复,尝试以下方法:
在function uc_check_avatar中找到
$res = uc_fopen2($url, 500000, ”, ”, TRUE, UC_IP, 20);
修改为:
$res = trim(uc_fopen2(UC_API."/avatar.php?uid=$uid&check_file_exists=1"));
原本的call很不稳定,有时候返回不出1,新的这个直接打开url返回数值。
© 网站版权与免责声明
1、【鸿茂传媒】独立拥有本网站相关网页内所有资料的版权;
2、未经【鸿茂传媒】的明确书面许可,任何人不得对其进行复制;
3、本网站未注明【鸿茂传媒】的文章,均来源于网络,仅供大家学习与参考;
4、如有侵权/违规/不妥请联系客服QQ或邮箱删除,敬请谅解;
5、【鸿茂传媒】保留随时更正、修改、更新本声明的权利。法律申明