perl 获取阿里云主机信息
use LWP::UserAgent;
use Data::UUID;
use Data::GUID;
use HTTP::Date qw(time2iso str2time time2iso time2isoz);
use HTTP::Cookies;
use POSIX;
use Data::Dumper;
use JSON qw/encode_json decode_json/; sub _init{
my $uuid = Data::GUID->new->as_string;
#print "\$uuid is $uuid\n";
$region=shift;
$Action=shift;
use Encode;
my $SDATE = strftime("%Y-%m-%dT%H:%M:%SZ",localtime());
use URI::Escape;
$SDATE=uri_escape("$SDATE");
#print "\$SDATE is $SDATE\nX";
$SDATEX = $SDATE;
$SDATEX =~ s#%#%25#g;
#print "\$SDATEX is $SDATEX\n"; use URI::Escape qw(uri_unescape);
use MIME::Base64;
use Digest::HMAC_SHA1;
$xx="GET&%2F&AccessKeyId%3DZ7bph8ZgNR4oMNVh%26Action%3D$Action%26Format%3DJSON%26RegionId%3D$region%26SignatureMethod%3DHMAC-SHA1%26SignatureNonce%3D$uuid%26SignatureVersion%3D1.0%26TimeStamp%3D$SDATEX%26Version%3D2014-05-26";
$xx = encode_utf8($xx);
#print "\$xx is $xx\n";
$str=Digest::HMAC_SHA1::hmac_sha1("$xx","xxxx;
$Signature = encode_base64($str,"");
#print "$Signature\n";
$Signature = encode_utf8($Signature); $head='http://ecs.aliyuncs.com/?';
#+ ͦۻΪ%20 =ͦۻΪ%3d
$Signature = uri_escape("$Signature"); $api="SignatureVersion=1.0&Format=JSON&TimeStamp=$SDATE&RegionId=$region&AccessKeyId=Z7bph8ZgNR4oMNVh&SignatureMethod=HMAC-SHA1&Version=2014-05-26&Signature=$Signature&Action=$Action&SignatureNonce=$uuid";
$url=$head.$api;
#print "\$url is $url\n";
}; sub get_url{
$url=shift;
$ua = LWP::UserAgent->new;
$ua->timeout(10);
$ua->env_proxy;
$ua->agent("Mozilla/8.0");
my $cookie_jar = HTTP::Cookies->new(
file => 'lwp_cookies.txt',
autosave => 1,
ignore_discard => 1
);
$ua->cookie_jar($cookie_jar); #
#
my $response = $ua->get($url); if ($response->is_success) {
$yy=$response->decoded_content;
# print $yy; # or whatever
}
else {
# print $response->decoded_content; # or whatever
die $response->status_line;
}
};
&_init(region1,DescribeRegions);
&get_url($url); &_init('cn-hangzhou',DescribeInstances);
&get_url($url);
my $d= $yy;
$d = decode_json($d);
$xx=$d->{Instances}->{Instance}
;
foreach (@{$xx}) {
print "InstanceID is $_->{InstanceId}\n";
print "ExpiredTime is $_->{ExpiredTime}\n";
print "IPaddr is $_->{PublicIpAddress}->{IpAddress}->[0]\n"};
perl 获取阿里云主机信息的更多相关文章
- Django+nginx+gunicore+supervisor+阿里云主机 部署博客项目
1 准备阶段 1 新鲜的阿里云主机 2 购买一个喜欢的域名 3 创建python的虚拟环境 2 阿里云主机的选取 咱们就是为了实验,我买了最便宜的阿里云主机 3 阿里云主机创建一个超级用户 3.1 默 ...
- 阿里云主机(aliyun-Linux) x64安装Redis详解
转载于:http://www.itxuexiwang.com/a/shujukujishu/redis/2016/0216/97.html?1455870336 如何在Linux上安装Redis呢, ...
- 阿里云主机安装Memcached
http://www.zyuns.com/?page_id=354 前言最近发现阿里云主机在使用中,并发访问量稍大,页面加载速度就很慢.于是学习了一些服务器优化的文章,决定安装Memcached,优化 ...
- 【小技巧解决大问题】使用 frp 突破阿里云主机无弹性公网 IP 不能用作 Web 服务器的限制
背景 今年 8 月份左右,打折价买了一个阿里云主机,比平常便宜了 2000 多块.买了之后,本想作为一个博客网站的,毕竟国内的服务器访问肯定快一些.满心欢喜的下单之后,却发现 http 服务,外网怎么 ...
- VisualVM监控远程阿里云主机
一.前言 使用VisualVM监控远程主机,主要是要在远程主机上部署JMX服务和jstat服务,jstat服务的部署花了我半天的时间,而且,网上的资基本都是缺胳膊少腿的,没有一篇是一个整体(行得通的) ...
- 在阿里云主机的Debian操作系统上安装Docker
因为需要新搭建饭团网站,所以需要在阿里云的主机上跑数据库,java环境. 考虑到可扩展性和模块化,所以准备最近流行的docker技术.Docker -- 从入门到实践 阿里云主机1核1G,资源不多,所 ...
- 放弃阿里云主机,选择高性价比Vultr VPS免备案
阿里云主机ECS推广多年后,质量有所改善,但我依然强烈不推荐阿里云主机.考虑性价比带宽速度等因素后,我推荐的vps品牌有vultr和digitalocean,还有大名鼎鼎的linode,是中国用户的最 ...
- 阿里云主机Nginx下配置NodeJS、Express和Forever
https://cnodejs.org/topic/5059ce39fd37ea6b2f07e1a3 AngularJS中文社区即运行在阿里云主机上,本站使用Nginx引擎,为了AngularJS,我 ...
- 花1台的钱入手2台【最能抗DDoS】阿里云主机【攻略】
花1台的钱入手2台[最能抗DDoS]阿里云主机[攻略]: 第一步:先申请0元半年 http://click.aliyun.com/m/335/:注:0元机器只有新帐号可申请第二步:再买6折37/月 h ...
随机推荐
- 【转】四步完成win7 ubuntu双系统安装(硬盘,无需光驱)
原文网址:http://ifeiyang.cn/archives/1835.html 适用环境: 理论上win7.vista系统32位或64位均可.ubuntu适用与10.X版本,且ubuntu-10 ...
- java 自定义鼠标图标
由于截图截不了,所以看不了图.源码如下: import java.awt.Cursor; import java.awt.Image; import java.awt.Point; import ja ...
- javascript将毫秒还原为可读时间格式
<script type="text/javascript"> //随便设置一个时间 var otime = new Date("2015-11-11 20: ...
- 网站发布在另外一个网站下面配置伪静态之后图片样式和JS丢失
<script src="<%=ResolveClientUrl("~/content/js/jquery-1.7.1.min.js") %>" ...
- Windows 不能在 本地计算机 启动 SQL Server(MSSQLSERVER)。错误码126
结合自己的解决方案和网络上搜到的内容,现总结如下: 首先你要知道问题出在了什么地方才能针对性处理. 1.打开事件查看器 计算机右击——管理 右侧会出现错误列表,在其中找到SQL server有关的查看 ...
- Arcgis Engine - 脱离ToolBarControl控件的命令和工具
可以手动实现脱离ToolBarControl控件的命令和工具 //打开文件. private void file_tsmItem_Click(object sender, EventArgs e) { ...
- Javscript中的null和undefined
1.null是JavaScript关键字,含义是“非对象”,它可以表示数字.字符串和对象是“无值”的. var x = null; typeof x ;//返回“object” var x=null, ...
- visual studio 一直显示正在准备解决方案
首先重启电脑,无法解决的情况下执行以下步骤: Kill Visual Studio Open Visual Studio without loading a solution Disable Ankh ...
- redis使用Java学习
一.连接到redis服务 import redis.clients.jedis.Jedis; public class RedisJava { public static void main(Stri ...
- Access restriction: The type * is not accessible due to restrict,报错问题
解决方案1: Eclipse 默认把这些受访问限制的API设成了ERROR. Windows -> Preferences -> Java -> Compiler -> Er ...