您可以将存储空间配置成静态网站托管模式。配置生效后,访问网站相当于访问存储空间,并且能够自动跳转至指定的索引页面和错误页面。

更多关于静态网站托管的介绍,请参见开发指南中的配置静态网站托管

设置静态网站托管

以下代码用于设置静态网站托管:

package main

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

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

	bucketName := "<yourBucketName>"

	// 设置静态网站托管: 索引页面为index.html, 错误页面为error.html。
	err = client.SetBucketWebsite(bucketName, "index.html", "error.html")
	if err != nil {
		fmt.Println("Error:", err)
		os.Exit(-1)
	}
}

查看静态网站托管配置

以下代码用于查看静态网站托管配置:

package main

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

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

	bucketName := "<yourBucketName>"

	// 查看静态网站托管配置。
	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)
}

删除静态网站托管配置

以下代码用于删除静态网站托管配置:

package main

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

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

	bucketName := "<yourBucketName>"

	// 删除静态网站托管配置。
	err = client.DeleteBucketWebsite(bucketName)
	if err != nil {
		fmt.Println("Error:", err)
		os.Exit(-1)
	}
}