使用 URL 重写将本地图像文件夹重新映射到 S3 存储桶

使用 URL 重写将本地图像文件夹重新映射到 S3 存储桶

我正在尝试实现一个场景,其中我的网站的图片存储在 Amazon S3 存储桶中。到目前为止,我已经设置了存储桶和 CNAME 记录,以便通过 URI 模式从 S3 正确提供图片:'http://images/myDomain.com/[图片文件]'

现在我想让 IIS 重写传入的请求以指向 S3。该网站的图像当前存储为:

http://testing.myDomain.com/content/images/logo.jpg

针对 IIS 的 URL 重写模块进行了几个示例测试,我认为这个规则应该有效,但显然不行。由于我正在测试这个规则,所以我实际上是在名为 testing 的子域中工作。上面的 URL 确实解析为我的 logo.jpg。

<rule name="Redirect Images" stopProcessing="true">
    <match url="http://testing.myDomain.com/content/images/(.*)" />
    <action type="Redirect" url="http://images.myDomain.com/{R:0}" />
</rule> 

谢谢

答案1

匹配 URL 字段只是 URL 部分,因此它必须是“content/images/(.*)”。这样您的规则才能生效。

确保尽可能更新 HTML 源代码以使用 images.mydomain.com 路径。这样就无需执行客户端重定向,URL 重写规则只是旧剩余链接的备份。

您还可以将 ARR 视为反向代理,以便在调用图像时不会发生客户端重定向。

相关内容