我試圖結合Azure將大部分文件存儲在應用程序中。我希望將這些文件上傳到Azure的私有容器和私人Blob,並將這些上傳通過Azure CDN複製到所有其他節點(仍作爲私有容器和Blob)。然後,我希望我的應用程序向存儲的blob發出請求,並在一段時間內向我提供blob的共享訪問簽名鏈接。但是,我希望生成的鏈接可以爲用戶提供最近的數據中心。每當需要blob時,我都會生成SAS,但我需要能夠使用CDN上的SAS選項。使用Azure甚至可以這樣做,還是我只能在一個數據中心中使用SAS?使用共享訪問簽名的Azure CDN
編輯 我希望我們的CDN充當如果我們的主數據中心的副本,所以我不想除非它們從主數據中心刪除永遠要刪除的CDN對象。如果我創建了SAS並將其放在CDN URL的末尾,如果SAS上的截止日期已過,但不是緩存持續時間,用戶是否能夠返回並訪問該文件?
繼承人我的例子:
- 緩存持續時間:5天
- Azure存儲網址:http://azstorage.blob.core.windows.net/images/img1.jpg
- CDN端點:http://az507923.vo.msecnd.net/
- Azure存儲SAS參數:?ST = 2015-03-30T19 %3A21%3A09Z & se = 2015-04-01T20%3A21%3A09Z & sr = c & sp = r & sig = STTE1p0ujzZr31ZjPaOlNoImCPcjss2GoRsOWDlpJuI%3D
- 最終CDN網址:http://az507923.vo.msecnd.net/images/img1.jpg?st=2015-03-30T19%3A21%3A09Z&se=2015-04-01T20%3A21%3A09Z&sr=c&sp=r&sig=STTE1p0ujzZr31ZjPaOlNoImCPcjss2GoRsOWDlpJuI%3D
顯然,用戶可以訪問該網址,直到2015年4月1日,但如果他們回來對2015年4月2日,將他們仍然有機會?
另外,假設我將blob的緩存控制標頭設置爲與SAS URL同時過期,這也是緩存持續時間之後。然後,我有一個用戶在2015年4月8日回來找同一個blob,我們會生成一個新的SAS並將其提供給用戶,blob是否仍在CDN上,或者緩存控制頭是否將其從CDN中刪除?
查看我原來的帖子瞭解更多信息/澄清。 – SchaF 2015-03-31 18:50:37