阿里云CDN刷新链接接口实践

softyun3年前云服务器122

今天更改了一个线上的css文件,由于项目部署了cdn,需要对缓存进行清理。有两种方式;

一、清除cdn缓存

二、更改页面引入文件地址,如加入版本号

第一种方式需要登录阿里云,然后进行缓存清理操作,比较麻烦;

第二种方式如果是涉及的页面数量过多,在更改起来也是非常麻烦的。

我们使用的阿里云的cdn产品,记得以往的产品都有api接口,想通过阿里云cdn接口模式对链接进行缓存清除操作。

下面是php实例:

一、安装SDK

使用composer进行安装,命令:

composer require alibabacloud/client

二、获取阿里云参数

1、accessKeyId

2、accessSecret

建议使用子密钥

    <?php /**  * Created by PhpStorm.  * User: Administrator  * Date: 2019/10/29 0029  * Time: 10:10  */   namespace App\index\controller;   use AlibabaCloud\Client\AlibabaCloud; use AlibabaCloud\Client\Exception\ClientException; use AlibabaCloud\Client\Exception\ServerException; use think\Controller; use think\Request;   class Cdn extends Controller     protected $accessKeyId;     protected $accessSecret;       public function __construct(Request $request = null    {         parent::__construct($request);         $this->accessKeyId  = '123456789'        $this->accessSecret = '123456789'    }       public function index()     {         $url = 'demo/css/index.css';         AlibabaCloud::accessKeyClient($this->accessKeyId, $this->accessSecret)             ->regionId('cn-hangzhou'            ->asDefaultClient();         try {             $result = AlibabaCloud::rpc()                 ->product('Cdn'                // ->scheme('http') // http | http                 ->version('2019-05-10'                ->action('RefreshObjectCaches'                ->method('POST'                ->host('cdn.aliyuncs'                ->options([                     'query' => [                         'RegionId'   => "cn-hangzhou"                        'ObjectPath' => $url,                     ],                 ])                 ->request();             $res    = $result->toArray();             if(isset($res['RefreshTaskId'])) {                 echo '刷新成功'            } else {                 echo '刷新失败'            }         }         catch(ClientException $e) {             echo $e->getErrorMessage() . PHP_EOL;         }         catch(ServerException $e) {             echo $e->getErrorMessage() . PHP_EOL;         }       } 

建议在提交刷新后,2分钟后查看效果,注意要清除浏览器缓存哦!


标签: 阿里云
免责声明:本文内容来自用户上传并发布,站点仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。请核实广告和内容真实性,谨慎使用。

相关文章

阿里云域名绑定IP以及二级域名使用图文教程

前提登录的阿里云账户下,需要拥有一个阿里云域名和一台ECS服务器。什么是云解析DNS?云解析DNS(Alibaba Cloud DNS)是一种安全、快速、稳定、可扩展的权威DNS服务,云解析DNS为企...

阿里云ECS端口怎么开?阿里云服务器放行端口图文教程

有用户在安装URLOS后无法正常访问,其实是因为云主机的9968和9966端口没有开放,如何开放端口?以阿里云ECS云主机为例。首先找到“云服务器ECS”,在“网络和安全”中打开“安全组”,如下图:然...

2023阿里云栖大会:阿里云发布自研CPU芯片倚天710,性能超业界标杆20%

10月19日召开的2023阿里云栖大会现场,阿里巴巴旗下半导体公司平头哥发布自研云芯片倚天710。这是阿里云推进“一云多芯”策略的重要一步,也是阿里第一颗为云而生的CPU芯片,将在阿里云数据中心部署应...

在阿里云购买云服务器并安装宝塔面板的步骤

阿里云购买服务器购买云服务器,服务器版本选择centos 7.5版本,之后在控制台打开实例2,设置root密码 如果你购买时没有设置root密码 这里需要重置下下载软件并安装宝塔本地下载putty 链...

阿里云:云服务器AMD二代火热公测;新品限时特惠,低至176.45元/月起

阿里云的云服务器AMD二代火热公测,基于最新AMD EPYC处理器,采用最高端定制款型号,满足您各类型应用对性能与价格均衡的需求。阿里云也从去年开始发布了第一代amd云服务器(从属与第六代阿里云服务器...

阿里云的WindowsServer2016上部署php+apache

一、说明:项目需要在阿里云的WindowsServer2016上部署web环境,已经安装了Mysql,所以就不用一键安装(如phpstudy或者wamp来安装web环境了),就独立安装了Apache和...