Tüm Ürünler
Search
Belge Merkezi

Object Storage Service:website

Son Güncelleme:Oct 01, 2026

Statik web sitesi barındırma özelliğini kullanarak statik web sitenizi bir Object Storage Service (OSS) paketinde barındırabilir ve paketin uç noktası üzerinden siteye erişebilirsiniz. Bir paket için statik web sitesi barındırma yapılandırdıktan sonra, kullanıcıların OSS'ten istediği veriler mevcut değilse geri dönüş kurallarını yapılandırarak bu verilere erişilebilmesini sağlayabilirsiniz. Bu konuda, bir paket için statik web sitesi barındırma ve geri dönüş yapılandırmalarını eklemek, değiştirmek, sorgulamak veya silmek üzere website komutunun nasıl çalıştırılacağı açıklanmaktadır.

Kullanım notları

  • Bir pakete web sitesiyle ilgili yapılandırmalar eklemek veya bu yapılandırmaları değiştirmek için oss:PutBucketWebsite iznine sahip olmanız gerekir. Bir paketin web sitesiyle ilgili yapılandırmalarını sorgulamak için oss:GetBucketWebsite iznine sahip olmalısınız. Bir paketin web sitesiyle ilgili yapılandırmalarını silmek için ise oss:DeleteBucketWebsite izni gereklidir. Daha fazla bilgi için bkz. Özel ilke atama.

  • ossutil 1.6.16 ve sonraki sürümlerde, komut satırında ikili dosya adı olarak doğrudan ossutil kullanabilirsiniz. İşletim sistemine göre ikili dosya adını güncellemeniz gerekmez. 1.6.16'dan önceki ossutil sürümlerinde işletim sistemine göre ikili dosya adını güncellemeniz gerekir. Daha fazla bilgi için bkz. ossutil komut referansı.

  • Bir paket için statik web sitesi barındırma yapılandırıldıktan sonra, kullanıcıların OSS'ten istediği veriler mevcut değilse 404 hatası döndürülür. Ancak, paket için geçerli bir kaynak içeren geri dönüş kuralları yapılandırırsanız kullanıcılar bu kurallara göre verilere erişebilir.

    Statik web sitesi barındırma hakkında daha fazla bilgi için bkz. Genel bakış.

    Geri dönüş hakkında daha fazla bilgi için bkz. Geri dönüş yapılandırmasına genel bakış.

Bir pakete web sitesiyle ilgili yapılandırmalar ekleme veya bu yapılandırmaları değiştirme

Bir pakette web sitesiyle ilgili yapılandırma yoksa website komutunu çalıştırdığınızda paket için yeni yapılandırmalar eklenir. Paket zaten web sitesiyle ilgili yapılandırmalara sahipse website komutunu çalıştırdığınızda yeni yapılandırmalar mevcut olanların üzerine yazılır.

Web sitesiyle ilgili yapılandırmaları eklemek veya değiştirmek için aşağıdaki adımları uygulayın:

  1. Yerel bir dosya oluşturun ve web sitesiyle ilgili yapılandırmaları bu dosyaya ekleyin.

  2. Web sitesiyle ilgili yapılandırmaları hedef pakete ekleyin.

Komut sözdizimi ve örnekler

  • Komut sözdizimi

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

    Aşağıdaki tabloda önceki komuttaki parametreler açıklanmaktadır.


    Parametre


    Açıklama


    bucketname


    Web sitesiyle ilgili yapılandırmaları eklemek veya değiştirmek istediğiniz paketin adı.


    local_xml_file


    Web sitesi kurallarını yapılandırmak için kullanmak istediğiniz yerel dosyanın adı. Örnek: localfile.xml.

  • Örnekler

    1. localfile.xml adlı yerel bir dosya oluşturun ve dosyada farklı web sitesi kuralları yapılandırın.

      Aşağıdaki örnek kod, statik web sitesi barındırma yapılandırmaları ve geri dönüş yapılandırmaları dahil olmak üzere bir pakete eksiksiz web sitesiyle ilgili yapılandırmaların nasıl ekleneceğini göstermektedir. İhtiyaçlarınıza göre yalnızca statik web sitesi barındırma yapılandırmalarını veya yalnızca geri dönüş yapılandırmalarını ekleyebilirsiniz.

      • Statik web sitesi barındırma yapılandırmaları

        Aşağıdaki örnekte <IndexDocument> alanı, statik web sitesinin varsayılan ana sayfasının index.html olduğunu belirtir. <ErrorDocument> alanı ise statik web sitesinin varsayılan 404 sayfasının error.html olduğunu belirtir.

      • Geri dönüş yapılandırmaları

        Aşağıdaki örnekte <RoutingRules> alanı geri dönüş kurallarını belirtir. Geri dönüş kuralları için yapılandırabileceğiniz parametreler hakkında daha fazla bilgi için bkz. Genel bakış.

      <?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. Web sitesiyle ilgili yapılandırmaları examplebucket adlı pakete eklemek için aşağıdaki komutu çalıştırın:

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

      Benzer bir çıktı görüntülenirse web sitesiyle ilgili yapılandırmalar examplebucket paketine eklenmiş demektir:

      0.299514(s) elapsed

Web sitesiyle ilgili yapılandırmaları sorgulama

  • Komut sözdizimi

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

    Aşağıdaki tabloda önceki komuttaki parametreler açıklanmaktadır.


    Parametre


    Açıklama


    bucketname


    Web sitesiyle ilgili yapılandırmalarını sorgulamak istediğiniz paketin adı.


    local_xml_file


    Web sitesiyle ilgili yapılandırmaların depolandığı yerel dosyanın adı. Örnek: localfile.xml. Bu parametre belirtilmezse sorgulanan web sitesiyle ilgili yapılandırmalar görüntülenir.

  • Örnekler

    • examplebucket paketinin web sitesiyle ilgili yapılandırmalarını sorgulamak ve yapılandırmaları localfile.xml yerel dosyasında depolamak için aşağıdaki komutu çalıştırın:

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

      Benzer bir çıktı görüntülenirse examplebucket paketinin web sitesiyle ilgili yapılandırmaları sorgulanmış ve localfile.xml dosyasına kaydedilmiş demektir:

      0.212407(s) elapsed
    • examplebucket paketinin web sitesiyle ilgili yapılandırmalarını sorgulamak ve yapılandırmaların görüntülenmesini sağlamak için aşağıdaki komutu çalıştırın:

      ossutil website --method get oss://examplebucket

      Benzer bir çıktı görüntülenirse examplebucket paketinin web sitesiyle ilgili yapılandırmaları sorgulanmış demektir:

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

Web sitesiyle ilgili yapılandırmaları silme

  • Komut sözdizimi

    ossutil website --method delete oss://bucketname
  • Örnekler

    examplebucket adlı paketin web sitesiyle ilgili yapılandırmalarını silmek için aşağıdaki komutu çalıştırın:

    ossutil website --method delete oss://examplebucket

    Benzer bir çıktı görüntülenirse paketin web sitesiyle ilgili yapılandırmaları silinmiş demektir:

    0.212409(s) elapsed

Ortak seçenekler

Farklı bir bölgedeki bir pakete erişmek için uç noktayı belirtmek üzere -e seçeneğini kullanın. Farklı bir Alibaba Cloud hesabına ait bir pakete erişmek için AccessKey ID için -i ve AccessKey Secret için -k seçeneğini kullanın.

Örneğin, Çin (Hangzhou) bölgesinde bulunan ve başka bir Alibaba Cloud hesabına ait testbucket adlı bir pakete web sitesiyle ilgili yapılandırmalar eklemek için aşağıdaki komutu çalıştırabilirsiniz:

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

Ortak seçenekler.