nav-img
Evolution

Хостинг статического сайта

Бакет Object Storage можно использовать для размещения статического сайта.

Статический сайт работает на клиентских технологиях, например HTML, CSS и JavaScript. Серверная часть при этом отсутствует.

Сайт состоит из объектов в бакете, ключи которых соответствуют адресам страниц. URL страницы выглядит так: https://<bucket_domain_name>.s3-website.cloud.ru/<object_key>.

Для работы хостинга бакету необходимы публичный доступ и доменное имя.

Бакет также можно использовать:

  • Для переадресации всех запросов — указать адрес и протокол, на который будут перенаправляться все запросы.

  • Для условной переадресации запросов — перенаправить запросы в соответствии с префиксами имен объектов или HTTP-кодами ответов. Например, запросы к удаленному объекту можно перенаправить на другие страницы.

Примеры правил переадресации

Подход к написанию правил зависит от инструмента, который вы используете.

  • Переадресация с удаленного объекта на другой объект:


    <RoutingRules>
    <RoutingRule>
    <Condition>
    <KeyPrefixEquals>oldfolder/</KeyPrefixEquals>
    </Condition>
    <Redirect>
    <HostName/>
    <HttpRedirectCode/>
    <Protocol/>
    <ReplaceKeyPrefixWith/>
    <ReplaceKeyWith>newfolder/index.html</ReplaceKeyWith>
    </Redirect>
    </RoutingRule>
    </RoutingRules>

    Где:

    • oldfolder/ — префикс ключа объекта, с которого выполняется переадресация.

    • newfolder/index.html — ключ объекта, к которому выполняется переадресация.

  • Переадресация с адресов, которые возвращают HTTP-код 404, на другой объект:


    <RoutingRules>
    <RoutingRule>
    <Condition>
    <HttpErrorCodeReturnedEquals>404</HttpErrorCodeReturnedEquals>
    </Condition>
    <Redirect>
    <HostName/>
    <HttpRedirectCode/>
    <Protocol/>
    <ReplaceKeyPrefixWith/>
    <ReplaceKeyWith>error/404.html</ReplaceKeyWith>
    </Redirect>
    </RoutingRule>
    </RoutingRules>

    Где:

    • 404 — HTTP-код ответа, при получении которого выполняется переадресация.

    • error/404.html — ключ объекта, к которому выполняется переадресация.

Подробнее с примерами правил вы можете ознакомиться в документации AWS.