IITT网络服务中心
标题:
DISCUZX2.5/3/3.1云存储通用接口1.1.0beta版本[8.22最新更新
[打印本页]
作者:
admin
时间:
2016-4-9 02:20
标题:
DISCUZX2.5/3/3.1云存储通用接口1.1.0beta版本[8.22最新更新
8.22
更新七牛云,20MB以内小附件测试通过
8.7
更新阿里云OSS,20MB以内小附件测试通过
云存储接口测试结果:
服务
图片
附件
批量上传
删除操作
大附件
又拍云
图片大于2M时间歇性失败
同左
同左
正常
未测
阿里云
对于10M左右大图上传正常
目前测试20M左右小附件,正常
正常
正常
未测
七牛云
对于10M左右大图上传正常
目前测试20M左右小附件,正常
正常
正常
未测
DiscuzX使用云存储原理:
我们通过改造ftp类,当附件上传到本地时再通过ftp类将附件上传到云存储上。
安装步骤:
1,到
http://service.iitt.cc/thread-4458-1-1.html
下载最新框架并安装。
2,下载本附件,并上传到服务器。
3,到config_global.php添加配置信息:
// --------------------------- 附件储存-开始 --------------------------- //
$_config['extend']['storage']['curstorage']='aliyun'; // 指定储存(upyun/又拍云,aliyun/阿里OSS,qiniu/七牛云)
$_config['extend']['storage']['upyun']['bucket']='XXX'; // 又拍云设置
$_config['extend']['storage']['upyun']['username']='XXX';
$_config['extend']['storage']['upyun']['password']='XXX';
$_config['extend']['storage']['upyun']['attachurl']='http://XXX';
$_config['extend']['storage']['aliyun']['access_id']='XXX'; // 阿里OSS设置
$_config['extend']['storage']['aliyun']['access_key']='XXX';
$_config['extend']['storage']['aliyun']['access_host']='XXX';
$_config['extend']['storage']['aliyun']['bucket']='XXX';
$_config['extend']['storage']['aliyun']['attachurl']='http://XXX/';
$_config['extend']['storage']['qiniu']['accesskey']='XXX'; // 七牛云设置 1
$_config['extend']['storage']['qiniu']['secretkey']='XXX'; // 2
$_config['extend']['storage']['qiniu']['attachurl']='http://XXX'; // 4
$_config['extend']['storage']['qiniu']['bucket']='XXX'; // 3
// --------------------------- 结束 --------------------------- //
复制代码
目前支持这四个云接口,第一行表示目前使用的云接口,然后选择补充完对应的配置信息。
极其重要
注意:
此框架阿里云OSS
默认为杭州地区
,如果为其它区域,请修改
extend/vendor/storage/aliyun/sdk.class.php
否则无法连接,如果为同区域内网ECS连接必须更改,否则会走外网线路。
OSS服务地址: 第72行: const DEFAULT_OSS_HOST = 'oss.aliyuncs.com'; (
oss.aliyuncs.com修改为
除bucket外的外/内网地址
)
222.jpg
(11.56 KB, 下载次数: 654)
下载附件
2016-4-9 04:39 上传
4,到后台的全局——上传设置——远程附件,选择打开,留空,填写远程访问URL地址,当没执行步骤3时,整个过程将按照一个正常FTP设置来运行。
111.jpg
(26.95 KB, 下载次数: 655)
下载附件
2016-4-9 04:35 上传
(仅填写红框处的外网地址即可!)
5,上传附件并测试。
附件:
DZ3.2-OSS-七牛云-又拍云.zip
(50.02 KB, 下载次数: 2)
2016-4-9 04:04 上传
点击文件名下载附件
使用注意事项:1,本项测试目前只针对20MB以内小附件,对于大附件请等待以后版本新增的大附件异步上传支持脚本。
2,本服务我们只测试了常规情景下的上传动作,对于其他很多部分暂未测试,欢迎大家试用,并把问题及时反馈给我们以便我们及时修正。
3,本版本暂不支持多组服务器多个云存储同时共存,在使用前确认后不可再改,以后的版本可能会新增多个云存储多个bucket共存并向下兼容。
疑问解答:为什么不改造class_upload类而改造class_ftp类?
这个问题在发布至今一直有人问起,现统一作答。
由于discuz是一个复杂的程序,很多信息还依赖本地支持。比如上传后需要获取附件类型大小,图片附件需要获取尺寸信息,exif,是否为动画等信息并存入数据库。同时上传后的缩略图预览,缩略图生成,数据调用,feed生成等还都依赖本地,这也就决定了目前直接改造upload类会涉及到太大的工作量,直接上传到云存储并不是最好的方法。当然各位如果有兴趣可以自行研究下。
本云存储插件的完成和测试要感谢@myp4p的支持,还有七牛、阿里云官方团队的支持。
欢迎光临 IITT网络服务中心 (http://service.iitt.cc/)
Powered by Discuz! X3