PHP开通kangle主机

之前介绍了kangle主机api接口的使用方法,今天来介绍一下如何用PHP开通kangle主机。可当api接口用。


准备工作

首先要有一台vps或者服务器并且安装了kangle。如果没有也没关系,只要能拿到服务器的Ip和安全码就足矣
*在此之前,强烈建议您先查看文章《kangle主机API接口介绍》

本次全程使用的是PHP7.1,未在其他版本测试通过。请自行修改

创建产品

BV60.jpg
BV60.jpg

BLIP.jpg
BLIP.jpg

自己创建你的产品类型和信息,这里我用freeus来演示。

声明变量

在前面的文章中有提到,远程访问api需要有以下几点参数。
c : (con­trol) 表示哪个控制文件 (目前有 whm,cdn)
a : (ac­tion) 表示哪个方法,以下介绍
r : 随机数
s : 秘钥,通过 md5 (a + skey +r)
这里,我们先简单的声明一下这些变量

//主机安全码 key
$aqm = "L8KPu6O1G6ya01AD";
//方法 a (添加主机add_vh)
$ffa = "add_vh";
//随机数 r
$sjs = 2019;
//产品名称
$product_name = "freeus";

创建用户名和密码

这里有两种方法,一种是用户自行输入,一种是随机数

获取GET参数

这里用网址传参的方式来创建主机。这样可以让用户自行输入主机的名字和密码,有点问题的是如果出现重复可能会创建失败。

$uname = $_GET["user"];
$upassword = $_GET["pw"];

随机数

如果用随机数当用户名会有一个问题,就是难以记忆。kangle的设置是首字母不能是数字,但是可以学习SPIDC在前面加一个s,这样就可以很好的解决这个问题。

新建随机数方法

function getRandomString($len, $chars = null) {
    if (is_null($chars)) {
        $chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
    }
    mt_srand(10000000*(double)microtime());
    for ($i = 0, $str = '', $lc = strlen($chars)-1; $i < $len; $i++) {
        $str .= $chars[mt_rand(0, $lc)];
    }
    return $str;
}

然后再传入用户名和密码

$uname = getRandomStringName(5);//用户名5位数,可以自行修改
$upassword = getRandomString(9);//密码9位数,可以自行修改

合成S秘钥

这里可以直接用到php的md5()函数代码如下
$kanglekey = md5($ffa.$aqm.$sjs,false);false代表生成32位MD5

远程访问

首先进行一下简单的合并数据

$furl = "http://localhost:3312/api/index.php?c=whm&a=$ffa&r=$sjs&s=$kanglekey&name=".$uname."&passwd=".$upassword."&init=1&product_name=$product_name&json=1";
//将查询得到的数据
$apiback = file_get_contents($furl);
//将结果解析给Json
$jdecodedata = json_decode($apiback,true);
$apibackres = $jdecodedata['result'];
if ($apibackres == 200) {
    echo "成功 ";
} else {
    echo "失败";
}

好累啊,写教程真不容易2333

- The End -

手机扫码查看

采用 知识共享署名4.0 国际许可协议进行许可。


添加新评论

评论列表