如何为云存储中使用静态站点 URL 的文件生成签名 URL?

cil*_*hex 5 ruby google-cloud-storage gcloud gcloud-ruby

假设我有一个域名,media.coolsite.com. 还说我在 Google Cloud Storage 中有一个同名的存储桶。我还正确设置了 cname,这样当我media.coolsite.com在浏览器中访问时,它就会呈现index.html在存储桶中。

01.mp3该存储桶还包含一个我正在尝试获取其签名 URL 的文件。我可以使用以下代码来做到这一点:

gcloud = Gcloud.new
storage = gcloud.storage
bucket = storage.bucket 'media.coolsite.com'
file = bucket.file '01.mp3'
signed_url = file.signed_url
Run Code Online (Sandbox Code Playgroud)

这会返回一个类似这样的 URL:

https://storage.googleapis.com/media.coolstuff.com/01.mp3 ?GoogleAccessId=...&Expires=...等...

但我想要的是这样的 URL:

http://media.coolstuff.com/01.mp3 ?GoogleAccessId=...&Expires=...等...

请注意不同的主机:media.coolstuff.com而不是storage.googleapis.com.

我怎样才能使用宝石做到这一点gcloud