一:打开七牛云存储官网https://www.qiniu.com/?hmsr=biaoti&hmpl=pinzhuan&hmcu=biaoti&hmkw=&hmci=,新用户根据提示进行注册,注册成功,进行登陆php
二:登陆成功以后在主页面->页面存储->新建存储空间-> 存储空间名称 , 存储区域 , 访问控制 ->点击存储空间的名字->内容管理html
三:能够进行图片测试,在内容管理下面选择上传文件,在上传成功以后,点击返回来的图片信息,右键复制外链,把结果放到浏览器浏览头上,就能够经过浏览器进行访问了。thinkphp
四:结合tp框架的使用:api
要在tp中使用七牛云存储,要注意如下几点:浏览器
1》配置文件,将你的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以下:dom
rray(1) { ["photo"] => array(10) { ["name"] => ["type"] => ["size"] => ["key"] =>" ["ext"] => ["sha1"] => ["savename"] => ["savepath"] => ["url"] => } }
第四步,计算下载凭证
Common目录function.php添加方法测试
- function Qiniu_Encode($str) // URLSafeBase64Encode
- {
- $find = array('+', '/');
- $replace = array('-', '_');
- return str_replace($find, $replace, base64_encode($str));
- }
- function Qiniu_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;
- }
复制代码url
$RealDownloadUrl为下载对应私有资源的可用URL
参考
http://document.thinkphp.cn/manual_3_2.html#upload
http://developer.qiniu.com/docs/v6/api/reference/security/download-token.html