云存储:阿里云 和 七牛 的比较
结论:
阿里云存储 | 七牛云存储 | |
标准:REST、HTTP | 99%符合 | 50% |
基本功能:送二级域名、绑定域名、CDN | 支持 | 支持 |
自定义文件HTTP header | 支持 | 少量支持 |
高级服务:图片处理 | 不提供 | 很完善地提供 |
收费策略 | 收费 | 小流量免费。大流量收费。 |
官方PHP SDK | 差,依赖亚马逊http库,而不是PHP官方PEAR HTTP_Request2 | 差 |
把阿里云存储官方混乱的PHP SDK 重写成PEAR,然后作为apk下载使用。
然后想把图片服务器也迁移到云存储,这样不占用VPS带宽。这时候才发现 阿里云OSS 只有最简单的文件存储功能,不支持图片处理。
比如图片服务器最常用的功能:
1、上传一张原图,实时自动生成任意分辨率的各种图片
比如原图
http://example.com/2.jpg
然后请求任意分辨率,请求时服务器自动生成并输出,比如
http://example.com/2.jpg?resolution=1280x720
2、格式自动转换
比如http://example.com/2.jpg?format=png
由于阿里云存储不支持图片功能,所以不能用了。考虑迁移到七牛。
参考七牛官方PHP SDK,重写成PHP PEAR包,发现七牛API不是REST。
API对比如下:
阿里云存储 | 七牛云存储 | |
上传文件 | HTTP PUT 资源URI | HTTP POST up.qiniu.com |
删除文件 | HTTP DELETE 资源URI | HTTP POST rs.qbox.me |
认证 | HTTP header Authorization | 一会儿使用HTTP header Authorization,一会儿使用POST token |
阿里云存储 API CURL demo:
上传文件:
curl -i -X <span '</span><span PUT</span><span '</span> -T <span '</span><span 1.jpg</span><span '</span> <span '</span><span http://com-163-sinkcup.oss.aliyuncs.com/1.jpg</span><span '</span> -H <span '</span><span Authorization: OSS asdf:qwer</span><span '</span> -H <span '</span><span Content-Type:image/jpeg</span><span '</span>
curl -i -X <span '</span><span DELETE</span><span '</span> <span '</span><span http://com-163-sinkcup.oss.aliyuncs.com/2.jpg</span><span '</span>
七牛云存储 API CURL demo:
上传文件(可以看出七牛把bucket放在token认证中,技术上导致七牛无法实现“公共上传”):
curl -i -F <span '</span><span file=@2.jpg</span><span '</span> -F <span '</span><span token=asdf</span><span '</span> -F <span '</span><span key=2.jpg</span><span '</span> <span '</span><span http://up.qiniu.com/</span><span '</span>
curl -i -X <span '</span><span POST</span><span '</span> -H <span '</span><span Authorization: QBox asdf</span><span '</span> <span '</span><span http://rs.qbox.me/delete/com-163-sinkcup:1.jpg</span><span '</span>
可以看出:阿里云存储在技术上比较严谨,使用标准REST。七牛有的地方不再使用token,使用了HTTP header Authorization,可能正在改进。
图片功能对比如下:
阿里云存储 | 七牛云存储 | |
自动生成任意分辨率 | 无 | 支持 |
自动生成任意格式 | 无 | 支持 |
webp | 无 | 支持,可节约app大量流量 |
七牛的图片demo:
原图 103KB:http://com-163-sinkcup.qiniudn.com/6ffe255fab20747c8872638870268703
自动生成jpg 79KB:http://com-163-sinkcup.qiniudn.com/6ffe255fab20747c8872638870268703?imageMogr/v2/auto-orient/thumbnail/1366x768/quality/80/format/jpg
自动生成webp 23KB:http://com-163-sinkcup.qiniudn.com/6ffe255fab20747c8872638870268703?imageMogr/v2/auto-orient/thumbnail/1366x768/quality/80/format/webp
由于七牛提供的图片功能及其强大,支持webp对移动互联网省流量特别重要(Android、ios app省70%流量),而且七牛使用go语言,还写了本书(《Go语言编程》豆瓣),说明技术上实力很强,以后会支持REST的,所以最后决定使用 七牛云存储。
阿里云和七牛的PHP SDK都一样不规范,没法用,只能重写。我重写好了,在这里:
七牛云存储PHP PEAR包下载:http://www.cnblogs.com/sink_cup/p/PHP_PEAR_Services_Qiniu.html
阿里云存储PHP PEAR包下载:http://www.cnblogs.com/sink_cup/p/PHP_PEAR_Services_Aliyun_OSS.html
阿里云存储1%不符合标准的地方:
自定义HTTP header使用了小写,不符合HTTP常识。比如阿里云使用x-oss-acl是错误的,应该使用X-Oss-Acl。

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

現今手機的效能和功能越來越強大,幾乎所有手機都配備了便利的NFC功能,方便用戶進行行動支付和身分認證。然而,有些小米14Pro的用戶可能不清楚如何啟用NFC功能。接下來,讓我詳細向大家介紹一下。小米14Pro怎麼開啟nfc功能?步驟一:打開手機的設定選單。步驟二:找到並點選「連接和分享」或「無線和網路」選項。步驟三:在連接和共享或無線和網路選單中,找到並點擊「NFC和付款」。步驟四:找到並點選「NFC開關」。一般情況下,預設是關閉的狀態。步驟五:在NFC開關頁面上,點選開關按鈕,將其切換為開啟狀

本站8月5日消息,阿里雲宣布,2024雲棲大會將於9月19日~21日在杭州雲棲小鎮舉辦,將設三日主論壇、400場分論壇與並行話題以及近四萬平方米展區。雲棲大會對民眾免費開放,即日起民眾可透過雲棲大會官網免費申請暢享票,另有5,000元的全通票可購買,本站附門票網址:https://yunqi.aliyun.com/2024 /ticket-list據介紹,雲棲大會起源於2009年,最初命名為第一屆中國網站發展論壇,2011年演變成阿里雲開發者大會,2015年正式更名為“雲棲大會”,至今已連續成功舉

隔空滑動螢幕是華為的一項功能,在華為mate60系列中可以說是備受好評,這個功能是通過利用手機上的激光感應器和前置攝像頭的3D深感攝像頭,來完成一系列不需要觸碰螢幕的功能,比如說隔空刷抖音,但華為Pocket2該要怎麼隔空刷抖音呢?華為Pocket2怎麼隔空截圖? 1.開啟華為Pocket2的設定2、然後選擇【輔助功能】。 3.點選打開【智慧感知】。 4.打開【隔空滑動螢幕】、【隔空截圖】、【隔空按壓】開關就可以了。 5.使用的時候,需要再距離螢幕20~40CM處,張開手掌,待螢幕上出現手掌圖標,

WPS是我們常用的辦公室軟體,在進行長篇文章的編輯時,常常會因為字體太小而看不清楚,所以會對字體和整個文件進行調整。例如:把文件進行行距的調整,會讓整個文件變得非常清晰,我建議各位小夥伴們都要學會這個操作步驟,今天就分享給大家,具體的操作步驟如下,快來看一看!開啟要調整的WPS文字文件,在【開始】選單中找到段落設定工具欄,你會看到行距設定小圖示(如圖中紅色線圈所示)。 2.點選行距設定右下角的小倒三角形,會出現對應的行距數值,可以選擇1~3倍行距(如圖箭頭所示)。 3.或者點選滑鼠右鍵點擊段落,就會出

根據3月2日數據統計,比特幣二層網路MerlinChain總TVL已達30億美元。其中比特幣生態資產佔比達90.83%,包括價值15.96億美元的BTC以及4.04億美元的BRC-20資產等。上一個月,MerlinChain在開啟質押活動14天內,其TVL總額就已經達到了19.7億美元,超過了去年11月份上線也是最近同樣引人注目的Blast。 2月26日,MerlinChain生態內的NFT總價值超過了4.2億美元,成為除以太坊以外NFT市值最高的公鏈項目。項目簡介MerlinChain是OKX支

Git是一個快速、可靠、適應性強的分散式版本控制系統。它旨在支援分散式的非線性工作流程,使其成為各種規模的軟體開發團隊的理想選擇。每個Git工作目錄都是一個獨立的儲存庫,具有所有更改的完整歷史記錄,並且能夠追蹤版本,即使沒有網路存取或中央伺服器。 GitHub是託管在雲端的Git儲存庫,它提供了分散式修訂控制的所有功能。 GitHub是Git的儲存庫,託管在雲端。與作為CLI工具的Git不同,GitHub有一個基於Web的圖形使用者介面。它用於版本控制,這涉及與其他開發人員協作,並追蹤隨時間推移對腳本和

C語言與PHP的差異及比較分析C語言和PHP都是常見的程式語言,但它們在許多方面有著明顯的差異。本文將對C語言和PHP進行比較分析,並透過具體的程式碼範例來說明它們之間的差異。一、語法和用途:C語言:C語言是一種過程導向的程式語言,主要用於系統級程式設計和嵌入式開發。 C語言的語法相對較為簡潔和底層,能夠直接操作內存,具有高效性和靈活性。 C語言強調程式設計師對程式的完全

時代的進步讓許多人收入越來越高了,平時使用的手機也會經常更換,最近小米剛推出的小米14Ultra想必用戶們都是有所了解的,性能配置非常高,能夠為用戶們提供更為舒適的流暢體驗,不過新手機難免會遇到很多不會用的功能,例如小米14UltraAI智慧擴圖怎麼使用?快來看看下面的使用教學吧!小米14UltraAI智慧擴圖怎麼使用?先打開小米14Ultra,進入相冊,選擇想要進行擴圖的圖片,進入相簿編輯選項。點選其中的裁切旋轉,點選裁切,在出現的選擇中點選智慧擴圖。最後根據你自己的需求來選擇擴圖的方式,
