【问题标题】:How can I redirect an S3 url using a query string parameter?如何使用查询字符串参数重定向 S3 url?
【发布时间】:2014-01-24 09:52:44
【问题描述】:

我想将 URL“http://mydomain.com/s3?file=test”重定向到“http://mydomain.com/s3/test.js”,其中 mydomain.com 是一个 S3 静态站点。

根据文档,除非我使用 Web 服务器,否则似乎不可能,但我想知道是否有办法完全通过 S3 重定向(http://docs.aws.amazon.com/AmazonS3/latest/dev/how-to-page-redirect.htmlhttp://docs.aws.amazon.com/AmazonS3/latest/dev/HowDoIWebsiteConfiguration.html)来做到这一点。

【问题讨论】:

    标签: redirect amazon-s3


    【解决方案1】:

    是的,您可以通过在将 s3 存储桶配置为静态网站时指定重定向规则来做到这一点。

    根据您的要求,重定向规则为:

    <RoutingRules>
      <RoutingRule>
        <Condition>
          <KeyPrefixEquals>?file=test</KeyPrefixEquals>
        </Condition>
        <Redirect>
          <ReplaceKeyPrefixWith>s3/test.js</ReplaceKeyPrefixWith>
        </Redirect>
      </RoutingRule>
    </RoutingRules>
    

    希望对你有帮助

    【讨论】:

    • 可以动态做吗?即 file=test1 到 s3/test1.js,file=test123 到 s3/test123.js 等等。还是我必须手动为每个定义一个规则?
    • @DanGoldin 在这种情况下,您可以将?file= 重定向到s3/。您可能还需要HttpErrorCodeReturnedEquals
    • 我认为它不起作用,当我将某些内容设置为&lt;KeyPrefixEquals&gt;?file=test&amp;lang=it&lt;/KeyPrefixEquals&gt; S3 时将错误返回为无效 XML。幸运的是,它有自己的语法检查。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-03
    • 2015-03-02
    • 1970-01-01
    • 2012-11-29
    • 2021-04-05
    相关资源
    最近更新 更多