admin 发表于 2023-2-14 14:40:06

解决discuz 3.4新用户强制上传头像后,无法发帖问题!

首先,先检查贵站转HTTPS后UCENTER会否出现通讯失败,有问题先要修正

然后问题就出在了头像获取上,在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返回数值。

IT618发布 发表于 2023-2-14 14:40:39

感谢老大! 小站问题解决!

拾光 发表于 2023-2-14 14:41:29

赞一个{:2_35:}

IT618发布 发表于 2023-2-14 14:42:17

谢谢分享
页: [1]
查看完整版本: 解决discuz 3.4新用户强制上传头像后,无法发帖问题!

创宇盾启航版免费网站防御网站加速服务