更新时间:2023-11-09 GMT+08:00
设置托管配置
您可以通过ObsClient->setBucketWebsite设置桶的托管配置。
配置默认主页和错误页面
以下代码展示了如何配置默认主页和错误页面:
// 引入依赖库 require 'vendor/autoload.php'; // 使用源码安装时引入SDK代码库 // require 'obs-autoloader.php'; // 声明命名空间 use Obs\ObsClient; // 创建ObsClient实例 $obsClient = new ObsClient ( [ //推荐通过环境变量获取AKSK,这里也可以使用其他外部引入方式传入,如果使用硬编码可能会存在泄露风险。 //您可以登录访问管理控制台获取访问密钥AK/SK,获取方式请参见https://support.huaweicloud.com/intl/zh-cn/usermanual-ca/ca_01_0003.html 'key' => getenv('ACCESS_KEY_ID'), 'secret' => getenv('SECRET_ACCESS_KEY'), 'endpoint' => 'https://your-endpoint' ] ); $resp = $obsClient->setBucketWebsite( [ 'Bucket' => 'bucketname', // 配置默认主页 'IndexDocument' => ['Suffix' => 'index.html'], // 配置错误页面 'ErrorDocument' => ['Key' => 'error.html'] ] ); printf ( "RequestId:%s\n", $resp ['RequestId'] );
配置重定向规则
以下代码展示了如何配置重定向规则:
// 引入依赖库 require 'vendor/autoload.php'; // 使用源码安装时引入SDK代码库 // require 'obs-autoloader.php'; // 声明命名空间 use Obs\ObsClient; // 创建ObsClient实例 $obsClient = new ObsClient ( [ //推荐通过环境变量获取AKSK,这里也可以使用其他外部引入方式传入,如果使用硬编码可能会存在泄露风险。 //您可以登录访问管理控制台获取访问密钥AK/SK,获取方式请参见https://support.huaweicloud.com/intl/zh-cn/usermanual-ca/ca_01_0003.html 'key' => getenv('ACCESS_KEY_ID'), 'secret' => getenv('SECRET_ACCESS_KEY'), 'endpoint' => 'https://your-endpoint' ] ); $resp = $obsClient->setBucketWebsite( [ 'Bucket' => 'bucketname', // 配置默认主页 'IndexDocument' => ['Suffix' => 'index.html'], // 配置错误页面 'ErrorDocument' => ['Key' => 'error.html'], // 配置重定向规则 'RoutingRules' => [ ['Condition' => ['HttpErrorCodeReturnedEquals' => 404], 'Redirect' => ['Protocol' => 'http', 'ReplaceKeyWith' => 'NotFound.html']], ['Condition' => ['HttpErrorCodeReturnedEquals' => 404], 'Redirect' => ['Protocol' => 'https', 'ReplaceKeyWith' => 'test.html']] ] ] ); printf ( "RequestId:%s\n", $resp ['RequestId'] );
![](https://support.huaweicloud.com/intl/zh-cn/sdk-php-devg-obs/public_sys-resources/note_3.0-zh-cn.png)
使用RoutingRules参数指定桶的重定向规则。
配置所有请求重定向
以下代码展示了如何配置所有请求重定向:
// 引入依赖库 require 'vendor/autoload.php'; // 使用源码安装时引入SDK代码库 // require 'obs-autoloader.php'; // 声明命名空间 use Obs\ObsClient; // 创建ObsClient实例 $obsClient = new ObsClient ( [ //推荐通过环境变量获取AKSK,这里也可以使用其他外部引入方式传入,如果使用硬编码可能会存在泄露风险。 //您可以登录访问管理控制台获取访问密钥AK/SK,获取方式请参见https://support.huaweicloud.com/intl/zh-cn/usermanual-ca/ca_01_0003.html 'key' => getenv('ACCESS_KEY_ID'), 'secret' => getenv('SECRET_ACCESS_KEY'), 'endpoint' => 'https://your-endpoint' ] ); $resp = $obsClient->setBucketWebsite( [ 'Bucket' => 'bucketname', 'RedirectAllRequestsTo' => ['HostName' => 'www.example.com', 'Protocol' => 'http'] ] ); printf ( "RequestId:%s\n", $resp ['RequestId'] );
![](https://support.huaweicloud.com/intl/zh-cn/sdk-php-devg-obs/public_sys-resources/note_3.0-zh-cn.png)
使用RedirectAllRequestsTo参数指定桶的所有请求重定向规则。
父主题: 静态网站托管