如何通過(guò)云存儲(chǔ)打造一個(gè)省錢、穩(wěn)定的圖片站
背景
相信很多做圖片站和下載站的站長(zhǎng)都有這樣的感受:隨著網(wǎng)站越做越大,這些圖片和附件該如何放置呢,再購(gòu)買一塊數(shù)據(jù)盤存放嗎?顯然不合適。另外雖然百度網(wǎng)盤、360網(wǎng)盤等網(wǎng)盤的存儲(chǔ)量很大,但是畢竟是寄存在別人那里,而且有很多不確定因素,說(shuō)不定哪天因“你懂的”原因一鍵刪除了,多少天的心血付諸東流,那可是欲哭無(wú)淚啊!
那么問(wèn)題來(lái)了,存在哪里好呢?阿里云對(duì)象存儲(chǔ)OSS——你正確的選擇!OSS + CDN+ URL簽名防盜的***組合,打造一個(gè)既省錢又安全又穩(wěn)定的圖片站!好了廢話不多說(shuō),直接切入主題。
解決方案
具體解決方案分為以下幾步:
***步,開(kāi)通OSS:
開(kāi)通地址:http://www.aliyun.com/product/oss/ 。
第二步,創(chuàng)建Bucket:
其中這個(gè)讀寫權(quán)限,如果你后續(xù)需要做簽名防盜的話,就選擇私有,否則選擇公共讀就可以了。如果你選擇了公共讀寫的話,存儲(chǔ)的Object將以固定URL地址形式,可供訪問(wèn)者讀寫,請(qǐng)慎重使用第三個(gè)。
第三步,設(shè)置Bucket:
本小節(jié)主要講解:防盜鏈和和域名綁定。
1.ãOSS設(shè)置refer防盜鏈:
因?yàn)镺SS是收費(fèi)的,所以防盜鏈功能一定要用上,以免浪費(fèi)你的RMB。
如上圖的設(shè)置,比如www.abcd.com想引用Bucket下的圖片,將無(wú)法展示圖片,這樣他就盜不了我的數(shù)據(jù),因?yàn)槲覜](méi)有把www.abcd.com添加到白名單。不過(guò)建議一般的搜索引擎都添加進(jìn)去方便收錄你的圖片。
2.ã綁定域名:
下載驗(yàn)證文件上傳到您域名的根目錄下。上傳完成后再通過(guò)OSS控制臺(tái)完成驗(yàn)證并綁定域名。
另外好多朋友以為這樣就可以了,其實(shí)還差一個(gè)重要的步驟cname域名解析:登錄域名服務(wù)商后臺(tái),進(jìn)行cname域名解析,我的是杭州的,記錄值是bucket.oss.aliyuncs.com 。
第四步,創(chuàng)建Object:
Object就是相當(dāng)于你電腦里的文件夾一樣,為了方便規(guī)范管理,建議上傳的圖片或者附件制定某個(gè)文件夾。
第五步:配置CDN:
登錄OSS控制臺(tái),在OSS管理控制臺(tái)-右邊的“CDN加速”,一鍵開(kāi)通CDN。
值得注意的是,開(kāi)通CDN,還要進(jìn)行CNAME綁定,步驟同三/2。
CDN里還有防盜鏈、緩存設(shè)置、CC防護(hù)等設(shè)置,如下圖所示,大家可以根據(jù)自己的實(shí)際情況自己設(shè)置:
第六步,OSS圖片處理:
這個(gè)功能對(duì)于做圖片站的站長(zhǎng)來(lái)說(shuō),是個(gè)很不錯(cuò)的功能??梢愿鶕?jù)自己的要求進(jìn)行剪裁、添加水印等功能 。
大家可以下載SDK了解下其豐富的圖片樣式,OSS圖片服務(wù)功能可以和又拍云相媲美。
第七步,OSS簽名防盜鏈:
對(duì)于做商業(yè)產(chǎn)品網(wǎng)站的站長(zhǎng)來(lái)說(shuō),做OSS簽名防盜真的很有必要,比如收費(fèi)的教程、收費(fèi)的視頻等等,特別是一些視頻、音頻等被盜鏈了,真的耗流量了,所url簽名防盜這個(gè)功能,必須給用上。在做簽名防盜前,先要把你的Bucket設(shè)置私有。
/生成簽名url,主要用戶私有權(quán)限下的訪問(wèn)控制
- function get_sign_url($obj){
- $bucket = 'holder';
- $object = '20150316164019.mp3';
- $timeout = 60;
- $response = $obj->get_sign_url($bucket,$object,$timeout);
- var_dump($response);
- }
$bucket = 'holder'; 這里是你創(chuàng)建的bucket名稱
$object = '20150316164019.mp3'; 這個(gè)是bucket下要加密的文件名。
$timeout = 60; 這里是簽名加密的時(shí)間,意思超過(guò)60秒鏈接就無(wú)效,這個(gè)時(shí)間可根據(jù)實(shí)際而設(shè)置
這種是動(dòng)態(tài)計(jì)算簽名URL的方法,可以有效地保護(hù)放在OSS上的數(shù)據(jù),防止被他人盜鏈。這個(gè)方法比前面講到的設(shè)置refer更有效。