洛杉矶MC机房 高速低价18元起

DIYVM

阿里云国际VPS 流量包监控脚本,超过限制自动关机

提示:如果官网是英文页面,建议使用谷歌浏览器能同步翻译页面。点击下载【谷歌浏览器最新绿色便携版】
注意:部分文章发布时间较长,可能存在未知因素,购买时建议在本站搜索商家名称,先充分了解商家动态。
交流:唯一投稿邮箱:hostvps@88.com。

自行更改 用户AccessKey 地区 机器ID
如果只有1台ecs 且是新加坡的 只需修改上面3个变量值 就能使用
AccessKey 获取方式 登录阿里云-进入控制台-右上角头像-AccessKey
机器ID就是ecs的id

<?php
error_reporting(0);
        $AccessKey_ID='xxxxxxxxxxxx';//AccessKey_ID
        $Access_Key_Secret='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx';//Access_Key_Secret
        $InstanceId='i-t4naxxxxxx';//需要关机的ecsID
        
    function percentEncode($str){
        // 使用urlencode编码后,将"+","*","%7E"做替换即满足ECS API规定的编码规范
        $res = urlencode($str);
        $res = preg_replace('/\+/', '%20', $res);
        $res = preg_replace('/\*/', '%2A', $res);
        $res = preg_replace('/%7E/', '~', $res);
        return $res;
    }
    function computeSignature($parameters, $accessKeySecret){
        // 将参数Key按字典顺序排序
        ksort($parameters);
        // 生成规范化请求字符串
        $canonicalizedQueryString = '';
        foreach($parameters as $key => $value)
        {
            $canonicalizedQueryString .= '&' . percentEncode($key)
                . '=' . percentEncode($value);
        }
        // 生成用于计算签名的字符串 stringToSign
        $stringToSign = 'GET&%2F&' . percentencode(substr($canonicalizedQueryString, 1));
        // 计算签名,注意accessKeySecret后面要加上字符'&'
        $signature = base64_encode(hash_hmac('sha1', $stringToSign, $accessKeySecret . '&', true));
      return $signature;
    }
    function get_action($data,$Version,$host){
        date_default_timezone_set("GMT");
        $dateTimeFormat = 'Y-m-d\TH:i:s\Z';
        global $AccessKey_ID;
        global $Access_Key_Secret;
        $publicdata = array(
            // 公共参数
            'Format' => 'JSON',
            'Version' => $Version,
            'AccessKeyId' => $AccessKey_ID,
            'SignatureVersion' => '1.0',
            'SignatureMethod' => 'HMAC-SHA1',
            'SignatureNonce'=> uniqid(),
            'Timestamp' => date($dateTimeFormat),
            'TimeStamp' => date($dateTimeFormat)
        );
        $data = array_merge($publicdata,$data);
        $data['Signature'] = computeSignature($data, $Access_Key_Secret);
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $host . http_build_query($data));
        curl_setopt($ch, CURLOPT_HEADER, 0);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
              curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
        $res = curl_exec($ch);
        date_default_timezone_set('PRC');
              //echo $res;
        return $res;
    }
         //流量JSON
    function get_(){
        $data = array(
                                                'Action' => 'QueryResourcePackageInstances',
                                                'RegionId' => 'ap-southeast-1'
                                        );
        
             $res = (string)get_action($data,'2017-12-14','https://business.ap-southeast-1.aliyuncs.com/?');
              //echo $res;
               $jsonarray = json_decode($res,true);
              if($jsonarray['Message']=='Successful!'){
                echo $jsonarray['Data']['Instances']['Instance'][0]['RemainingAmount'];
                if($jsonarray['Data']['Instances']['Instance'][0]['RemainingAmount']<=20){//这里判断流量小于20G 
                        StopInstance();
                }
        }
    }
        function StopInstance(){
                global $InstanceId;
        $data = array(
                                                'Action' => 'StopInstance',
                                                'InstanceId' => $InstanceId,
                                                'ForceStop' =>"true",
                                                'StoppedMode' => "keepcharging",
                                                'ConfirmStop' => "false"
                                        );
        $res = (string)get_action($data,'2014-05-26','https://ecs.aliyuncs.com/?');
              echo $res;
    }
        get_();    
?>

转自:https://www.hostloc.com/thread-677140-1-1.html

About 贝壳

【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。

 收藏 (0) 打赏

您可以选择一种方式赞助本站

支付宝扫一扫赞助

微信钱包扫描赞助

本文链接:贝壳主机网 » 阿里云国际VPS 流量包监控脚本,超过限制自动关机

分享到: 生成海报
香港/美国/国内高速VPS
切换注册

登录

忘记密码 ?

切换登录

注册

我们将发送一封验证邮件至你的邮箱, 请正确填写以完成账号注册和激活