URL-адрес Amazon S3 для перенаправления в root / - PullRequest
0 голосов
/ 08 октября 2018

У меня есть статический веб-сайт на S3, и я хочу, чтобы все запросы, поступающие на my-site.com/home/*, перенаправлялись на my-site.com/*.

(например, my-site.com/home/etc.html -> my-site.com/etc.html)

Я пробовал несколько способовчтобы решить это, но есть только не очень умные решения.Например, я мог бы написать правило перенаправления для всех HTML-файлов, как показано ниже.

<RoutingRules>
  <RoutingRule>
    <Condition>
      <KeyPrefixEquals>home/something.html</KeyPrefixEquals>
    </Condition>
    <Redirect>
      <ReplaceKeyWith>something.html</ReplaceKeyWith>
    </Redirect>
  </RoutingRule>
</RoutingRules>

Это работает, но я не хочу создавать правила для каждого нового файла.

<ReplaceKeyWith>/</ReplaceKeyWith> Этот метод также не работает.

Есть ли способ решить эту проблему или мне следует использовать nginx?

1 Ответ

0 голосов
/ 09 октября 2018

Если вы хотите, чтобы /home/{whatever} перенаправлял на /{whatever} для всех возможных значений {whatever}, тогда вам потребуется правило, соответствующее ключевому префиксу home/ и заменяющее его пустой строкой.

/ в начале пути не является частью ключа (или префикса ключа), поэтому эти выражения никогда не начинаются с /.

<RoutingRules>
  <RoutingRule>
    <Condition>
      <KeyPrefixEquals>home/</KeyPrefixEquals>
    </Condition>
    <Redirect>
      <ReplaceKeyPrefixWith></ReplaceKeyPrefixWith>
    </Redirect>
  </RoutingRule>
</RoutingRules>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...