AMH 5.X API调用方法

v2016 2020-3-8 2291

遍历全网也没有找到适用于 amh 5.x 的 api 调用方式,自己尝试了多次终于找到了办法。

在此吴尼玛便直接举出一个创建主机的例子,有想法的朋友就能举一反三出其它类似的操作了。

获取软件包名称

先找到需要执行操作的环境软件,有两种方法获取环境软件名称。
第一种是登录 AMH 后台,查看已安装的环境软件名称

第二种办法是通过 SSH 输入 AMH 命令查看环境软件名称

由此可见环境软件为 lnmp-3.1

例举 VHOST 操作

比如创建绑定 qq.com 的虚拟主机

amh lnmp-3.1 admin vhost_add lnmp5 qq.com 80 baidu.com

例举 VHOST 规则

创建虚拟主机

amh 环境软件 admin vhost_add 环境名 标识域名 监听 绑定域名

停止某虚拟主机

amh 环境软件 admin vhost_stop 环境名 标识域名

停止某虚拟主机的 PHP

amh 环境软件 admin vhost_stop_php 环境名 标识域名

删除虚拟主机

amh 环境软件 admin vhost_del 环境名 标识域名

具体 PHP 例子

由于反馈并不是直接以数组的形式,也就是不能直接判断状态,所以这是个令我这种小白头疼的问题,我的办法是直接判断关键词
具体例子如下:

<?php // amapi 调用函数 function amapi($url, $amapi_pass, $amh_cmd) { $data = "amapi_pass=$amapi_pass&amh_cmd=" . base64_encode($amh_cmd); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $data); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($ch); curl_close($ch); Return $result; } $url = 'http://ip:8888/index.php?c=amapi&a=call'; // 更改为您 amh 面板的 IP 与端口号 $amapi_pass = 'xxx'; // 更改使用您的 amapi 密钥 $amh_cmd = 'amh lnmp-3.1 admin vhost_add lnmp5 qq.com 80 qq.com'; // 执行 amh 命令 $data = amapi($url, $amapi_pass, $amh_cmd); if(strpos($data,'vhost create success') !== false){ echo 'TURE'; //创建成功 }else{ echo 'FALSE'; //创建失败 } ?>


唉转载自自己的博客,feed.cc
最新回复 (1)