Todos los productos
Search
Centro de documentos

Object Storage Service:website

Última actualización: Sep 25, 2026

La función de hosting de sitios web estáticos le permite alojar su sitio web en un bucket de Object Storage Service (OSS) y acceder a él mediante el endpoint del bucket. Si configura esta función para un bucket y los datos que los usuarios solicitan desde OSS no existen, puede establecer reglas de back-to-origin para garantizar que los usuarios obtengan la información de todos modos. En este tema se describe cómo ejecutar el comando website para agregar, modificar, consultar o eliminar configuraciones de hosting de sitios web estáticos y de back-to-origin de un bucket.

Notas de uso

  • Para agregar o modificar configuraciones relacionadas con sitios web en un bucket, debe contar con el permiso oss:PutBucketWebsite. Para consultar estas configuraciones, necesita el permiso oss:GetBucketWebsite. Para eliminarlas, requiere el permiso oss:DeleteBucketWebsite. Para obtener más información, consulte Grant a custom policy.

  • En ossutil 1.6.16 y versiones posteriores, puede usar directamente ossutil como nombre del binario en la línea de comandos. No es necesario actualizar el nombre del binario según el sistema operativo. En versiones anteriores a la 1.6.16, sí debe actualizarlo de acuerdo con el sistema operativo. Para obtener más información, consulte ossutil command reference.

  • Cuando se configura el hosting de sitios web estáticos para un bucket, se devuelve un error 404 si los datos solicitados por los usuarios desde OSS no existen. Sin embargo, si establece reglas de back-to-origin que contengan un origen válido para el bucket, los usuarios pueden obtener los datos conforme a dichas reglas.

    Para obtener más información sobre el hosting de sitios web estáticos, consulte Overview.

    Para obtener más información sobre back-to-origin, consulte 回源配置概述.

Agregar o modificar configuraciones de sitio web de un bucket

Si un bucket no tiene configuraciones de sitio web, al ejecutar el comando website se agregan nuevas configuraciones. Si ya cuenta con ellas, las nuevas configuraciones sobrescriben las existentes al ejecutar dicho comando.

Para agregar o modificar configuraciones de sitio web, siga estos pasos:

  1. Cree un archivo local y agregue las configuraciones de sitio web en él.

  2. Agregue las configuraciones de sitio web al bucket de destino.

Sintaxis del comando y ejemplos

  • Sintaxis del comando

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

    A continuación se describen los parámetros del comando anterior.

    Parámetro

    Descripción

    bucketname

    Nombre del bucket al que desea agregar configuraciones de sitio web o cuyas configuraciones desea modificar.

    local_xml_file

    Nombre del archivo local que utilizará para configurar las reglas del sitio web. Por ejemplo: localfile.xml.

  • Ejemplos

    1. Cree un archivo local llamado localfile.xml y configure distintas reglas de sitio web en él.

      El siguiente código de ejemplo muestra cómo agregar configuraciones completas de sitio web a un bucket, lo cual incluye tanto el hosting de sitios web estáticos como las reglas de back-to-origin. Según sus necesidades reales, puede agregar únicamente las configuraciones de hosting de sitios web estáticos o solo las de back-to-origin.

      • Configuración de hosting de sitios web estáticos

        En el siguiente ejemplo, el campo <IndexDocument> especifica que la página principal predeterminada del sitio web estático es index.html. El campo <ErrorDocument> indica que la página 404 predeterminada del sitio web estático es error.html.

      • Configuración de back-to-origin

        En el siguiente ejemplo, el campo <RoutingRules> define las reglas de back-to-origin. Para obtener más información sobre los parámetros que puede configurar en estas reglas, consulte Overview.

      <?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. Ejecute el siguiente comando para agregar configuraciones de sitio web al bucket denominado examplebucket:

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

      Si se muestra una salida similar, las configuraciones de sitio web se agregaron correctamente a examplebucket:

      0.299514(s) elapsed

Consultar configuraciones de sitio web

  • Sintaxis del comando

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

    A continuación se describen los parámetros del comando anterior.

    Parámetro

    Descripción

    bucketname

    Nombre del bucket cuyas configuraciones de sitio web desea consultar.

    local_xml_file

    Nombre del archivo local donde se almacenarán las configuraciones de sitio web. Por ejemplo: localfile.xml. Si no especifica este parámetro, las configuraciones consultadas se muestran directamente.

  • Ejemplos

    • Ejecute el siguiente comando para consultar las configuraciones de sitio web del bucket examplebucket y almacenarlas en el archivo local localfile.xml:

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

      Si se muestra una salida similar, las configuraciones de sitio web de examplebucket se consultaron y se guardaron en localfile.xml:

      0.212407(s) elapsed
    • Ejecute el siguiente comando para consultar las configuraciones de sitio web del bucket examplebucket e indicar que se muestren en pantalla:

      ossutil website --method get oss://examplebucket

      Si se muestra una salida similar, las configuraciones de sitio web de examplebucket se consultaron correctamente:

      <?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

Eliminar configuraciones de sitio web

  • Sintaxis del comando

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

    Ejecute el siguiente comando para eliminar las configuraciones de sitio web del bucket denominado examplebucket:

    ossutil website --method delete oss://examplebucket

    Si se muestra una salida similar, las configuraciones de sitio web del bucket se eliminaron correctamente:

    0.212409(s) elapsed

Opciones comunes

Para acceder a un bucket ubicado en otra región, use -e y especifique el endpoint correspondiente. Si necesita acceder a un bucket propiedad de otra cuenta de Alibaba Cloud, utilice -i para el AccessKey ID y -k para el AccessKey secret.

Por ejemplo, puede ejecutar el siguiente comando para agregar configuraciones de sitio web a un bucket llamado testbucket, ubicado en la región China (Hangzhou) y propiedad de otra cuenta de Alibaba Cloud:

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

Common options.