开发者社区> 问答> 正文

PHP-SDK之如何实现静态网站托管?

自定义域名绑定中提到,OSS 允许用户将自己的域名指向OSS服务的地址。这样用户访问他的网站的时候,实 际上是在访问OSS的Bucket。对于网站,需要指定首页(index)和出错页(error) 分别对应的Bucket中的文件名。
更多关于静态网站托管的内容请参考 OSS静态网站托管


提示:
  • 以下场景的完整代码请参考:GitHub


设置静态网站托管


您可以通过OssClient::putBucketWebsite设置静态网站托管: <?php
/**
* 设置bucket的静态网站托管模式配置
*
* @param $ossClient OssClient
* @param  $bucket string 存储空间名称
* @return null
*/
function putBucketWebsite($ossClient, $bucket)
{
    $websiteConfig = new WebsiteConfig("index.html", "error.html");
    try {
        $ossClient->putBucketWebsite($bucket, $websiteConfig);
    } catch (OssException $e) {
        printf(__FUNCTION__ . ": FAILED\n");
        printf($e->getMessage() . "\n");
        return;
    }
    print(__FUNCTION__ . ": OK" . "\n");
}



获取静态网站托管配置


您可以通过OssClient::getBucketWebsite获取静态网站托管配置: <?php
/**
* 获取bucket的静态网站托管状态
*
* @param OssClient $ossClient OSSClient实例
* @param string    $bucket bucket名字
* @return null
*/
function getBucketWebsite($ossClient, $bucket) {
    $websiteConfig = null;
    try{
        $websiteConfig = $ossClient->getBucketWebsite($bucket);
    } catch(OssException $e) {
        printf(__FUNCTION__ . ": FAILED\n");
        printf($e->getMessage() . "\n");
        return;
    }
    print(__FUNCTION__ . ": OK" . "\n");
    print($websiteConfig->serializeToXml() . "\n");
}



删除静态网站托管配置


您可以通过OssClient::deleteBucketWebsite删除静态网站托管配置: <?php
/**
* 删除bucket的静态网站托管模式配置
*
* @param OssClient $ossClient OSSClient实例
* @param string    $bucket bucket名字
* @return null
*/
function deleteBucketWebsite($ossClient, $bucket) {
    try{
        $ossClient->deleteBucketWebsite($bucket);
    } catch(OssException $e) {
        printf(__FUNCTION__ . ": FAILED\n");
        printf($e->getMessage() . "\n");
        return;
    }
    print(__FUNCTION__ . ": OK" . "\n");
}

展开
收起
青衫无名 2017-10-19 10:05:44 2080 0
0 条回答
写回答
取消 提交回答
问答排行榜
最热
最新

相关电子书

更多
阿里云栖开发者沙龙PHP技术专场-深入浅出网络编程与swoole内核-吴镇宇 立即下载
PHP安全开发:从白帽角度做安全 立即下载
PHP 2017.北京 全球开发者大会——高可用的PHP 立即下载