關於七牛雲實現圖片cdn圖片的加速實現

一:打開七牛雲存儲官網https://www.qiniu.com/?hmsr=biaoti&hmpl=pinzhuan&hmcu=biaoti&hmkw=&hmci=,新用戶根據提示進行註冊,註冊成功,進行登陸php

二:登陸成功以後在主頁面->頁面存儲->新建存儲空間-> 存儲空間名稱 , 存儲區域 , 訪問控制 ->點擊存儲空間的名字->內容管理html

三:能夠進行圖片測試,在內容管理下面選擇上傳文件,在上傳成功以後,點擊返回來的圖片信息,右鍵複製外鏈,把結果放到瀏覽器瀏覽頭上,就能夠經過瀏覽器進行訪問了。thinkphp

四:結合tp框架的使用:api

         要在tp中使用七牛雲存儲,要注意如下幾點:瀏覽器

         1》配置文件,將你的config.php裏面添加七牛雲存儲

            

  1. '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添加方法測試

  1. function Qiniu_Encode($str) // URLSafeBase64Encode
  2. {
  3.     $find = array('+', '/');
  4.     $replace = array('-', '_');
  5.     return str_replace($find, $replace, base64_encode($str));
  6. }
  7. function Qiniu_Sign($url) {//$info裏面的url
  8.     $setting = C ( 'UPLOAD_SITEIMG_QINIU' );
  9.     $duetime = NOW_TIME + 86400;//下載憑證有效時間
  10.     $DownloadUrl = $url . '?e=' . $duetime;
  11.     $Sign = hash_hmac ( 'sha1', $DownloadUrl, $setting ["driverConfig"] ["secrectKey"], true );
  12.     $EncodedSign = Qiniu_Encode ( $Sign );
  13.     $Token = $setting ["driverConfig"] ["accessKey"] . ':' . $EncodedSign;
  14.     $RealDownloadUrl = $DownloadUrl . '&token=' . $Token;
  15.     return $RealDownloadUrl;
  16. }

複製代碼url

$RealDownloadUrl爲下載對應私有資源的可用URL
參考
http://document.thinkphp.cn/manual_3_2.html#upload
http://developer.qiniu.com/docs/v6/api/reference/security/download-token.html

相關文章
相關標籤/搜索