Easypanel API 接口的使用
前言
Easypanel 的 API 可以完成主机的开通、删除与修改密码等操作,今天翻看其源代码研究了一下。
说明
入口
Easypanel 的 API 入口为 http://服务器地址:3312/api/index.php
请求方式支持 GET 与 POST。
基本参数
c
: 控制器a
: 操作r
: 随机数s
: 密钥json
: 是否返回 JSON (1或0),默认返回 XML 格式数据
密钥
密钥可以通过安全码与传入的部分参数计算得出。s = md5(a + skey + r)
如果鉴权失败,将返回
{"result": 403, "msg": "权限错误,请检查通信安全码是否正确"}
控制器
我找到的控制器有
- whm
- cdn
- dns
- da
- migrate
一般只会用到 whm 控制器,cdn 控制器是用于节点数据同步的,其余控制器我也不清楚。
whm 操作
info (获取 Kangle 与 Easypanel 信息)
无需传入额外参数。
getVh (获取站点信息)
参数
name
: 主机名称showpasswd
: 是否返回主机密码 (可选, 1或0,默认0)
add_vh (创建站点)
参数
name
: 主机名称passwd
: 密码init
: 固定为1
产品ID开通
product_id
: 产品ID
产品名称开通
product_name
: 产品名称
自定义参数开通
cdn
: 是否为CDN (1或0)subdir
: 默认绑定目录 (如 wwwroot)web_quota
: 网站空间配额 (MB)db_quota
: 数据库空间配额 (MB)max_subdir
: 最大绑定子目录数量 (0为不限制)subdir_flag
: 是否允许绑定子目录 (1或0)flow_limit
: 流量限制 (单位GB, 0为不限制)domain
: 可绑定域名数 (<=0为不限制)speed_limit
: 带宽限制 (KB/s, 0为不限制)max_connect
: 最大连接数 (0为不限制)access
: 是否启用 access.xml 自定义控制 (1或0)log_file
: 是否启用日志独立 (1或0)log_handle
: 是否启用日志分析 (1或0)ssi
: 是否启用 ssi 支持 (1或0)htaccess
: 是否启用 .htaccess
伪静态配置文件 (1或0)port
: 端口 (如 80,443s)
listVh (站点列表)
参数
showpasswd
: 是否返回主机密码 (可选, 1或0,默认0)
change_password (修改密码)
参数
name
: 站点名称passwd
: 新密码
update_vh (更新站点状态)
参数
name
: 站点名称status
: 状态 (0: 正常, 1: 暂停, 2: 超流量, 3: 超数据库)
del_vh (删除站点)
参数
name
: 站点名称
getDbUsed (获取数据库用量)
参数
name
: 站点名称