在我的 AWS S3 存储桶中,有很多文件名之间有空格。以下是其中 3 个可访问的文件 URL。
但是最近当我实现了 CloudFront CDN 分发时,源服务器是上面的 AWS S3 存储桶。
我的云前域名:d37uawng2qmzgo.cloudfront.net
现在,当我尝试使用我的 CloudFront 域名访问这些图像时。我收到一个错误页面。
以下是由 CloudFront 域名替换的 URL:
我发现问题在于文件名之间的空格。
CloudFront CDN 无法识别文件名之间的 + 符号(即空格)。
当我将“+”转换为“%20”时 ,它正在正确显示图像。
但问题是我的 AWS S3 存储桶中有很多文件,例如上述 3 个文件,而且我无法将 + 号更改为 %20 号。
那么谁能建议我一种方法来处理这些文件名之间的这些空格 ?
或者 AWS CloudFront 是否提供任何工具来处理此类文件命名问题?
最佳答案
我注意到 CloudFront 确实处理了 +
现在在网址中。所以如果你仍然有分发版,这个 URL 应该可以工作:
https://d37uawng2qmzgo.cloudfront.net/images/natural+scenery+with+mountain+and+cloud.jpg
但是,如果有 +
s 中的原始文件名,它们需要转换为 %2B
用于 CloudFront URL。
关于amazon-web-services - 如何处理 Amazon CloudFront 中有空格的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33759479/