在 iPic 中添加七牛云

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在 iPic 中添加七牛云相关的知识,希望对你有一定的参考价值。

参考技术A

七牛云是 iPic 在内测期间呼声比较高的国内图床,这里介绍下在 iPic 中添加七牛云的过程。

这点比较简单,直接到 这里 注册即可。

七牛的数据处理是以 资源 为单位的,这里我们可以简单理解为七牛中的 文件夹

登录七牛后,进入 添加资源 页面,选择添加 ****对象存储****。

这里我创建一个 ****test**** 资源。

# 在 iPic 中添加七牛图床
打开 偏好设置 ,进入 图床 页,选择添加 七牛 。

以下分别介绍各项的意义及如何配置:

完成输入后,可以点击 ****验证**** 按钮。如果输入没有问题,则右侧会出现 ****通过**** 链接,点击后就可以看到测试时上传至七牛的图片。

最后,点击 ****应用**** 按钮进行保存。

# 使用七牛
在 iPic 菜单 > 图床 中选择刚刚添加的七牛,之后上传的图片就会在七牛图床中。

注:本文中的图就是通过上述方式先上传至七牛、再粘贴至 Markdown 编辑器中,确实很方便,大家试试吧。

thinkphp 中 使用七牛云上传

利用七牛云私有空间存储文件

第一步,注册七牛云,创建空间,将空间设为私有

需要记下的东西:

AK,SK,bucket

第二步配置ThinkPHP

在config.php添加 

‘UPLOAD_SITEIMG_QINIU‘=>array(
‘maxSize‘=>5*1024*1024,//文件大小
‘rootPath‘=>‘./‘,
‘saveName‘=>array(‘uniqid‘,‘‘),
‘driver‘=>‘Qiniu‘,
‘driverConfig‘=>array(
‘secrectKey‘=>‘<这里填七牛SK>‘,
‘accessKey‘=>‘<这里填七牛AK>‘,
‘domain‘=>‘<空间名称>.qiniudn.com‘,
‘bucket‘=>‘<空间名称>‘,
)

  

 

 

复制代码


第三步,上传文件

控制器 

$setting=C(‘UPLOAD_SITEIMG_QINIU‘);
$Upload=new\Think\Upload($setting);
$info=$Upload->upload($_FILES);

  

 

 

复制代码


上传文件后得到的$info是这样的 

array(1){
["photo"]=>array(10){
["name"]=>
["type"]=>
["size"]=>
["key"]=>"
["ext"]=>
["sha1"]=>
["savename"]=>
["savepath"]=>
["url"]=>
}
}

  

 

 

复制代码


第四步,计算下载凭证

Common目录function.php添加方法 

functionQiniu_Encode($str)//URLSafeBase64Encode
{
$find=array(‘+‘,‘/‘);
$replace=array(‘-‘,‘_‘);
returnstr_replace($find,$replace,base64_encode($str));
}
functionQiniu_Sign($url){//$info里面的url
$setting=C(‘UPLOAD_SITEIMG_QINIU‘);
$duetime=NOW_TIME+86400;//下载凭证有效时间
$DownloadUrl=$url.‘?e=‘.$duetime;
$Sign=hash_hmac(‘sha1‘,$DownloadUrl,$setting["driverConfig"]["secrectKey"],true);
$EncodedSign=Qiniu_Encode($Sign);
$Token=$setting["driverConfig"]["accessKey"].‘:‘.$EncodedSign;
$RealDownloadUrl=$DownloadUrl.‘&token=‘.$Token;
return$RealDownloadUrl;
}

  

 

 

复制代码


$RealDownloadUrl为下载对应私有资源的可用URL

参考

http://document.thinkphp.cn/manual_3_2.html#upload

http://developer.qiniu.com/docs/v6/api/reference/security/download-token.html 

以上是关于在 iPic 中添加七牛云的主要内容,如果未能解决你的问题,请参考以下文章

如何自动上传文件到七牛云

如何将图片上传到七牛云平台?

thinkphp 中 使用七牛云上传

kindeditor 加入七牛云上传

Wordpress网站添加七牛云cdn

Canvas保存图片到七牛云