哇噢星球

 找回密码
 立即注册
搜索
热搜: 地形 技能 Lua

Discuz上传头像“文件上传过程中出现I/O错误”的解决办法

[复制链接]
皇家骑士 发表于 2018-5-22 14:39:38 | 显示全部楼层 |阅读模式
将Discuz更新到7.2版本的时候,在上传头像的模块中出现了“文件上传过程中出现I/O错误”的提示。这个模块是用Flash开发的,起初是怀疑UCenter的data/tmp文件权限不对,检查无误后,想到也许是apache设置了“Hotlink Protect”的缘故,将其取消测试,还是报错。最后只有求助于Google,发现网上很多同学们都遇到了同样的问题,但是提出的各种解决方法都并不有效。搜索了半天,终于在discuz的官方论坛上找到了一个解决方法:

打开BBS目录下的 uc_client/client.php 文件,找到第477行,应该如下:

$uc_avatarflash = UC_API.'/images/camera.swf?inajax=1&appid='.UC_APPID.'&input='.$uc_input.'&agent='.md5($_SERVER['HTTP_USER_AGENT']).'&ucapi='.urlencode(str_replace('http://', '', UC_API)).'&avatartype='.$type;
将这段代码改成:
$uc_avatarflash = UC_API.'/images/camera.swf?inajax=1&appid='.UC_APPID.'&input='.$uc_input.'&agent='.md5($_SERVER['HTTP_USER_AGENT']).'&ucapi='.urlencode(UC_API).'&avatartype='.$type;


搞定。貌似在open url的时候需要把"http://"协议字符串保留,但不知道为什么discuz把它干掉了,也许是php的配置问题。特此记录在blog中备忘。原文引用:http://www.acwind.net/blog/archives/797


补充:通常情况下这种问题出现在https的Discuz站点中。这种情况下还需要确保UC_API的前缀改为https。

参考:http://www.discuz.net/thread-3640518-1-1.html
回复

使用道具 举报

Archiver|手机版|小黑屋|哇噢星球  

GMT+8, 2019-2-18 14:58 , Processed in 0.140512 second(s), 16 queries , File On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表