バケット設定を静的 Web サイトホスティングモードに設定にします。 設定が有効になった後、バケットドメインを使用してこの静的 Web サイトにアクセスし、指定したインデックスページまたはエラーページにリダイレクトします。

静的 Web サイトホスティングの詳細については、「静的 Web サイトホスティング」をご参照ください。

静的 Web サイトホスティングの構成

静的 Web サイトホスティングを構成するには、次のコードを実行します。

package main

import (
	"fmt"
	"os"
	"github.com/aliyun/aliyun-oss-go-sdk/oss"
)

func main() {
	// Create an OSSClient instance.
	client, err := oss.New("<yourEndpoint>", "<yourAccessKeyId>", "<yourAccessKeySecret>")
	if err ! = nil {
		fmt.Println("Error:", err)
		os.Exit(-1)
	}

	bucketName := "<yourBucketName>"

	// Configure static web hosting: The index page is index.html and the error page is error.html.
	err = client.SetBucketWebsite(bucketName, "index.html", "error.html")
	if err ! = nil {
		fmt.Println("Error:", err)
		os.Exit(-1)
	}
}

静的 Web サイトホスティング構成の表示

静的 Web サイトホスティング構成を表示するには、次のコードを実行します。

package main

import (
	"fmt"
	"os"
	"github.com/aliyun/aliyun-oss-go-sdk/oss"
)

func main() {
	// Create an OSSClient instance.
	client, err := oss.New("<yourEndpoint>", "<yourAccessKeyId>", "<yourAccessKeySecret>")
	if err ! = nil {
		fmt.Println("Error:", err)
		os.Exit(-1)
	}

	bucketName := "<yourBucketName>"

	// View static web hosting configurations.
	wsRes, err := client.GetBucketWebsite(bucketName)
	if err ! = nil {
		fmt.Println("Error:", err)
		os.Exit(-1)
	}
	fmt.Println("indexWebsite: ", wsRes.IndexDocument.Suffix)
	fmt.Println("errorWebsite: ", wsRes.ErrorDocument.Key)
}

静的 Web サイトホスティング構成の削除

静的 Web サイトホスティング構成を削除するには、次のコードを実行します。

package main

import (
	"fmt"
	"os"
	"github.com/aliyun/aliyun-oss-go-sdk/oss"
)

func main() {
	// Create an OSSClient instance.
	client, err := oss.New("<yourEndpoint>", "<yourAccessKeyId>", "<yourAccessKeySecret>")
	if err ! = nil {
		fmt.Println("Error:", err)
		os.Exit(-1)
	}

	bucketName := "<yourBucketName>"

	// Delete static website hosting configurations.
	err = client.DeleteBucketWebsite(bucketName)
	if err ! = nil {
		fmt.Println("Error:", err)
		os.Exit(-1)
	}
}