Todos os produtos
Search
Central de documentação

Object Storage Service:website

Última atualização: Jul 03, 2026

Use o recurso de hospedagem de site estático para hospedar seu site em um bucket do Object Storage Service (OSS) e acessá-lo pelo endpoint do bucket. Após configurar a hospedagem de site estático, defina regras de back-to-origin para garantir que os usuários obtenham os dados mesmo quando estes não existirem no OSS. Este tópico descreve como usar o comando website para adicionar, modifique, consultar ou exclua configurações de hospedagem de site estático e de back-to-origin de um bucket.

Observações de uso

  • Para adicionar ou modifique configurações de site em um bucket, você precisa da permissão oss:PutBucketWebsite. Para consultar essas configurações, é necessária a permissão oss:GetBucketWebsite. Para excluí-las, você deve ter a permissão oss:DeleteBucketWebsite. Para mais informações, consulte Conceder uma política personalizada.

  • No ossutil 1.6.16 e versões posteriores, use diretamente ossutil como nome do binário na linha de comando, sem necessidade de alterá-lo conforme o sistema operacional. Em versões anteriores à 1.6.16, atualize o nome do binário de acordo com o sistema operacional. Para mais informações, consulte Guia de início rápido da ferramenta de linha de comando ossutil.

  • Se a hospedagem de site estático estiver configurada em um bucket e os dados solicitados pelos usuários não existirem no OSS, o sistema retornará um erro 404. No entanto, se você configure regras de back-to-origin com uma origem válida para o bucket, os usuários poderão obter os dados conforme essas regras.

    Para mais informações sobre hospedagem de site estático, consulte Visão geral.

    Para mais detalhes sobre back-to-origin, consulte Visão geral da configuração de back-to-origin.

Adicionar ou modifique configurações de site de um bucket

Se um bucket não possuir configurações de site, o comando website adicionará novas configurações. Caso o bucket já tenha configurações desse tipo, as novas definições substituirão as existentes durante a execução do comando.

Para adicionar ou modifique configurações de site, siga estas etapas:

  1. Crie um arquivo local e adicione as configurações de site a ele.

  2. Adicione as configurações de site ao bucket de destino.

Sintaxe do comando e exemplos

  • Sintaxe do comando

    ossutil website --method put oss://bucketname local_xml_file

    A tabela a seguir descreve os parâmetros do comando anterior.

    Parâmetro

    Descrição

    bucketname

    Nome do bucket onde você deseja adicionar ou modifique as configurações de site.

    local_xml_file

    Nome do arquivo local usado para configure as regras de site. Exemplo: localfile.xml.

  • Exemplos

    1. Crie um arquivo local chamado localfile.xml e defina diferentes regras de site nele.

      O código de exemplo a seguir mostra como adicionar configurações completas de site a um bucket, incluindo hospedagem de site estático e regras de back-to-origin. Conforme sua necessidade, adicione apenas as configurações de hospedagem de site estático ou apenas as de back-to-origin.

      • Configurações de hospedagem de site estático

        No exemplo a seguir, o campo <IndexDocument> define a página inicial padrão do site estático como index.html. O campo <ErrorDocument> especifique a página 404 padrão do site estático como error.html.

      • Configurações de back-to-origin

        No exemplo a seguir, o campo <RoutingRules> define as regras de back-to-origin. Para mais informações sobre os parâmetros configuráveis nessas regras, consulte Visão geral.

      <?xml version="1.0" encoding="UTF-8"?>
       <WebsiteConfiguration>
           <IndexDocument>
               <Suffix>index.html</Suffix>
           </IndexDocument>
           <ErrorDocument>
               <Key>error.html</Key>
           </ErrorDocument>
           <RoutingRules>
               <RoutingRule>
                   <RuleNumber>1</RuleNumber>
                   <Condition>
                       <KeyPrefixEquals>abc/</KeyPrefixEquals>
                       <HttpErrorCodeReturnedEquals>404</HttpErrorCodeReturnedEquals>
                   </Condition>
                   <Redirect>
                       <RedirectType>Mirror</RedirectType>
                       <PassQueryString>true</PassQueryString>
                       <MirrorURL>http://example.com/</MirrorURL>
                       <MirrorPassQueryString>true</MirrorPassQueryString>
                       <MirrorFollowRedirect>true</MirrorFollowRedirect>
                       <MirrorCheckMd5>false</MirrorCheckMd5>
                       <MirrorHeaders>
                         <PassAll>true</PassAll>
                         <Pass>myheader-key1</Pass>
                         <Pass>myheader-key2</Pass>
                         <Remove>myheader-key3</Remove>
                         <Remove>myheader-key4</Remove>
                         <Set>
                           <Key>myheader-key5</Key>
                           <Value>myheader-value5</Value>
                         </Set>
                       </MirrorHeaders>
                   </Redirect>
               </RoutingRule>
               <RoutingRule>
                   <RuleNumber>2</RuleNumber>
                   <Condition>
                     <KeyPrefixEquals>abc/</KeyPrefixEquals>
                     <HttpErrorCodeReturnedEquals>404</HttpErrorCodeReturnedEquals>
                     <IncludeHeader>
                       <Key>host</Key>
                       <Equals>test.oss-cn-beijing-internal.aliyuncs.com</Equals>
                     </IncludeHeader>
                   </Condition>
                   <Redirect>
                     <RedirectType>AliCDN</RedirectType>
                     <Protocol>http</Protocol>
                     <HostName>example.com</HostName>
                     <PassQueryString>false</PassQueryString>
                     <ReplaceKeyWith>prefix/${key}.suffix</ReplaceKeyWith>
                     <HttpRedirectCode>301</HttpRedirectCode>
                   </Redirect>
               </RoutingRule>
           </RoutingRules>
       </WebsiteConfiguration>
    2. Execute o comando a seguir para adicionar configurações de site ao bucket examplebucket:

      ossutil website --method put oss://examplebucket localfile.xml

      Se uma saída semelhante for exibida, as configurações de site foram adicionadas ao examplebucket:

      0.299514(s) elapsed

Consultar configurações de site

  • Sintaxe do comando

    ossutil website --method get oss://bucketname [local_xml_file]

    A tabela a seguir descreve os parâmetros do comando anterior.

    Parâmetro

    Descrição

    bucketname

    Nome do bucket cujas configurações de site você deseja consultar.

    local_xml_file

    Nome do arquivo local onde as configurações de site serão armazenadas. Exemplo: localfile.xml. Se este parâmetro não for especificado, as configurações consultadas serão exibidas na tela.

  • Exemplos

    • Execute o comando a seguir para consultar as configurações de site do bucket examplebucket e armazená-las no arquivo local localfile.xml:

      ossutil website --method get oss://examplebucket localfile.xml

      Se uma saída semelhante for exibida, as configurações de site do examplebucket foram consultadas e salvas em localfile.xml:

      0.212407(s) elapsed
    • Execute o comando a seguir para consultar as configurações de site do bucket examplebucket e exibi-las diretamente:

      ossutil website --method get oss://examplebucket

      Se uma saída semelhante for exibida, as configurações de site do examplebucket foram consultadas:

      <?xml version="1.0" encoding="UTF-8"?>
      <WebsiteConfiguration>
        <IndexDocument>
          <Suffix>index.html</Suffix>
          <SupportSubDir>false</SupportSubDir>
          <Type>0</Type>
        </IndexDocument>
        <ErrorDocument>
          <Key>error.html</Key>
        </ErrorDocument>
        <RoutingRules>
          <RoutingRule>
            <RuleNumber>1</RuleNumber>
            <Condition>
              <KeyPrefixEquals>abc/</KeyPrefixEquals>
              <HttpErrorCodeReturnedEquals>404</HttpErrorCodeReturnedEquals>
            </Condition>
            <Redirect>
              <RedirectType>Mirror</RedirectType>
              <PassQueryString>true</PassQueryString>
              <MirrorURL>http://example.com/</MirrorURL>
              <MirrorPassQueryString>true</MirrorPassQueryString>
              <MirrorPassOriginalSlashes>false</MirrorPassOriginalSlashes>
              <MirrorFollowRedirect>true</MirrorFollowRedirect>
              <MirrorIsExpressTunnel>false</MirrorIsExpressTunnel>
              <MirrorUserLastModified>false</MirrorUserLastModified>
              <MirrorCheckMd5>false</MirrorCheckMd5>
              <MirrorSwitchAllErrors>false</MirrorSwitchAllErrors>
              <MirrorHeaders>
                <PassAll>true</PassAll>
                <Pass>myheader-key1</Pass>
                <Pass>myheader-key2</Pass>
                <Remove>myheader-key3</Remove>
                <Remove>myheader-key4</Remove>
                <Set>
                  <Key>myheader-key5</Key>
                  <Value>myheader-value5</Value>
                </Set>
              </MirrorHeaders>
              <MirrorUsingRole>false</MirrorUsingRole>
              <MirrorAllowHeadObject>false</MirrorAllowHeadObject>
              <EnableReplacePrefix>false</EnableReplacePrefix>
            </Redirect>
          </RoutingRule>
          <RoutingRule>
            <RuleNumber>2</RuleNumber>
            <Condition>
              <IncludeHeader>
                <Key>host</Key>
                <Equals>test.oss-cn-beijing-internal.aliyuncs.com</Equals>
              </IncludeHeader>
              <KeyPrefixEquals>abc/</KeyPrefixEquals>
              <HttpErrorCodeReturnedEquals>404</HttpErrorCodeReturnedEquals>
            </Condition>
            <Redirect>
              <RedirectType>AliCDN</RedirectType>
              <Protocol>http</Protocol>
              <HostName>example.com</HostName>
              <PassQueryString>false</PassQueryString>
              <ReplaceKeyWith>prefix/${key}.suffix</ReplaceKeyWith>
              <EnableReplacePrefix>false</EnableReplacePrefix>
              <HttpRedirectCode>301</HttpRedirectCode>
            </Redirect>
          </RoutingRule>
        </RoutingRules>
      </WebsiteConfiguration>
      
      0.157648(s) elapsed

Exclua configurações de site

  • Sintaxe do comando

    ossutil website --method delete oss://bucketname
  • Exemplos

    Execute o comando a seguir para exclua as configurações de site do bucket examplebucket:

    ossutil website --method delete oss://examplebucket

    Se uma saída semelhante for exibida, as configurações de site do bucket foram excluídas:

    0.212409(s) elapsed

Opções comuns

Para acessar um bucket em outra região, use -e para especifique o endpoint. Para acessar um bucket pertencente a outra conta Alibaba Cloud, utilize -i para o AccessKey ID e -k para o AccessKey secret.

Por exemplo, execute o comando a seguir para adicionar configurações de site a um bucket chamado testbucket, localizado na região China (Hangzhou) e pertencente a outra conta Alibaba Cloud:

ossutil website --method put oss://testbucket localfile.xml -e oss-cn-hangzhou.aliyuncs.com -i yourAccessKeyID -k yourAccessKeySecret

Opções comuns.