2017-10-11 88 views
2

我沒有上傳帶Cache-Control的對象作爲參數,它不會在對象存儲桶中生效,但它在AWS S3存儲桶中使用相同的代碼在對象存儲中存儲具有Control-Cache頭部的對象是不可實現的

$s3Client->putObject([ 
      'ACL' => 'public-read', 
      'Bucket' => config('filesystems.disks.object-storage.bucket_name'), 
      'CacheControl' => 'public, max-age=86400', 
      'Key' => $path, 
      'SourceFile' => $path, 
     ]); 

我不明白爲什麼相同的代碼在兩個雲存儲桶中都沒有相同的效果,因爲它們都使用S3 API。

上傳的文件有控制高速緩存頭in AWS S3和相同的文件in IBM OO不會得到相同的結果。

如何在對象存儲文件中正確設置control-cache標頭?

+0

我使用AWS SDK文檔在http://docs.aws.amazon.com/aws-sdk-php/v3/api/api-s3-2006-03-01.html#putobject – user8322093

回答

0

IBM的對象存儲目前沒有爲AWS S3,有效的API操作在這裏列出https://ibm-public-cos.github.io/crs-docs/api-reference

的所有選項正如你可以看到有沒有控制高速緩存支持

+0

謝謝,我感謝你的裁判,我最後的疑問是關於有一些機制可以在對象存儲中爲我的文件設置到期頭文件,從而獲得更好的性能,你知道該怎麼做嗎? – user8322093

+1

這隻能用於快速對象存儲,您需要設置標題「X-Delete-At」和您想要的時間。請參閱https://community.runabove.com/kb/en/object-storage/how-to-schedule-deletion-of-objects.html –