宝塔面板API接口抓取教程-宝塔接口配置文件

宝塔面板1 字数 4198阅读模式

我们在使用宝塔面板的的时候,如果需要用PHP来操作一些API接口,那么肯定需要知道一些功能的API接口的数据,虽然官方文档也写了一些,但是写的很粗线条。

所以我们有时候需要自己抓取API接口数据,那么宝塔面板如何抓取呢,或者我们想要知道新建网站的这个动作的API的接口数据应该怎么抓取呢,今天这篇文章大鸟简单说说。

一:登录面板

额,这个不需要多说,我们需要登录自己的宝塔面板来操作。登录之后需要配置面板API,如图:

宝塔面板API接口抓取教程-宝塔接口配置文件

二:找到自己需要的功能

这里大鸟以新建网站为例,来抓取这个接口。额,大鸟这里用的是chrome浏览器,我们按F12打开审查元素(控制台)切换到Network选项卡,如图:

宝塔面板API接口抓取教程-宝塔接口配置文件

2.1 XHR

我们需要在控制台选中XHR才会看到接口,如图:

宝塔面板API接口抓取教程-宝塔接口配置文件

我们看到的[code]ajax?action=GetTaskCount[/code]这种形式的数据都是我们抓取到的APi接口,下面大鸟演示一下创建网站的接口获取。

三:创建网站的接口获取

这里我们需要新建一个站点,创建网站->填写网站域名等相关信息->提交,如图:

宝塔面板API接口抓取教程-宝塔接口配置文件

这个时候,我们会在XHR中看到此次创建网站传递的参数,如图:

宝塔面板API接口抓取教程-宝塔接口配置文件

在切换到Preview选项卡就能看到返回数据,如图:

宝塔面板API接口抓取教程-宝塔接口配置文件

这些接口的参数,就不多说了,从命名来看就能看出返回的数据是什么意思了。这样我就知道了API接口和参数。

四:宝塔接口配置文件

整理了一些接口配置文件,如下:

<?php
// +----------------------------------------------------------------------
// | 宝塔接口配置文件
// +----------------------------------------------------------------------
$config = array(
    # 系统状态相关接口
    'GetSystemTotal' => '/system?action=GetSystemTotal',	   //获取系统基础统计
    'GetDiskInfo' => '/system?action=GetDiskInfo',			     //获取磁盘分区信息
    'GetNetWork' => '/system?action=GetNetWork',			       //获取实时状态信息(CPU、内存、网络、负载)
    'GetTaskCount' => '/ajax?action=GetTaskCount',			     //检查是否有安装任务
    'UpdatePanel' => '/ajax?action=UpdatePanel',			       //检查面板更新
   	# 网站管理相关接口
   	'Websites' => '/data?action=getData&table=sites',		     //获取网站列表
   	'Webtypes' => '/site?action=get_site_types',			       //获取网站分类
   	'GetPHPVersion' => '/site?action=GetPHPVersion',		     //获取已安装的 PHP 版本列表
    'GetSitePHPVersion' => '/site?action=GetSitePHPVersion', //获取指定网站运行的PHP版本
    'SetPHPVersion' => '/site?action=SetPHPVersion',         //修改指定网站的PHP版本
    'SetHasPwd' => '/site?action=SetHasPwd',                 //开启并设置网站密码访问
    'CloseHasPwd' => '/site?action=CloseHasPwd',             //关闭网站密码访问
    'GetDirUserINI' => '/site?action=GetDirUserINI',         //获取网站几项开关(防跨站、日志、密码访问)
   	'WebAddSite' => '/site?action=AddSite',					         //创建网站
   	'WebDeleteSite' => '/site?action=DeleteSite',			       //删除网站
   	'WebSiteStop' => '/site?action=SiteStop',				         //停用网站
   	'WebSiteStart' => '/site?action=SiteStart',				       //启用网站
   	'WebSetEdate' => '/site?action=SetEdate',				         //设置网站有效期
   	'WebSetPs' => '/data?action=setPs&table=sites',			     //修改网站备注
   	'WebBackupList' => '/data?action=getData&table=backup',	 //获取网站备份列表
   	'WebToBackup' => '/site?action=ToBackup',				         //创建网站备份
   	'WebDelBackup' => '/site?action=DelBackup',				       //删除网站备份
   	'WebDoaminList' => '/data?action=getData&table=domain',	 //获取网站域名列表
    'GetDirBinding' => '/site?action=GetDirBinding',         //获取网站域名绑定二级目录信息
    'AddDirBinding' => '/site?action=AddDirBinding',         //添加网站子目录域名
    'DelDirBinding' => '/site?action=DelDirBinding',         //删除网站绑定子目录
    'GetDirRewrite' => '/site?action=GetDirRewrite',         //获取网站子目录伪静态规则
   	'WebAddDomain' => '/site?action=AddDomain',				       //添加网站域名
   	'WebDelDomain' => '/site?action=DelDomain',				       //删除网站域名
    'GetSiteLogs' => '/site?action=GetSiteLogs',             //获取网站日志
    'GetSecurity' => '/site?action=GetSecurity',             //获取网站盗链状态及规则信息
    'SetSecurity' => '/site?action=SetSecurity',             //设置网站盗链状态及规则信息
    'GetSSL' => '/site?action=GetSSL',                       //获取SSL状态及证书详情
    'HttpToHttps' => '/site?action=HttpToHttps',             //强制HTTPS
    'CloseToHttps' => '/site?action=CloseToHttps',           //关闭强制HTTPS
    'SetSSL' => '/site?action=SetSSL',                       //设置SSL证书
    'CloseSSLConf' => '/site?action=CloseSSLConf',           //关闭SSL
    'WebGetIndex' => '/site?action=GetIndex',                //获取网站默认文件
    'WebSetIndex' => '/site?action=SetIndex',                //设置网站默认文件
    'GetLimitNet' => '/site?action=GetLimitNet',             //获取网站流量限制信息
    'SetLimitNet' => '/site?action=SetLimitNet',             //设置网站流量限制信息
    'CloseLimitNet' => '/site?action=CloseLimitNet',         //关闭网站流量限制
    'Get301Status' => '/site?action=Get301Status',           //获取网站301重定向信息
    'Set301Status' => '/site?action=Set301Status',           //设置网站301重定向信息
   	'GetRewriteList' => '/site?action=GetRewriteList',		   //获取可选的预定义伪静态列表
   	'GetFileBody' => '/files?action=GetFileBody',			       //获取指定预定义伪静态规则内容(获取文件内容)
   	'SaveFileBody' => '/files?action=SaveFileBody',			     //保存伪静态规则内容(保存文件内容)
    'GetProxyList' => '/site?action=GetProxyList',           //获取网站反代信息及状态
    'CreateProxy' => '/site?action=CreateProxy',             //添加网站反代信息
    'ModifyProxy' => '/site?action=ModifyProxy',             //修改网站反代信息

    # Ftp管理
    'WebFtpList' => '/data?action=getData&table=ftps',       //获取FTP信息列表
    'SetUserPassword' => '/ftp?action=SetUserPassword',      //修改FTP账号密码
    'SetStatus' => '/ftp?action=SetStatus',                  //启用/禁用FTP

    # Sql管理
    'WebSqlList' => '/data?action=getData&table=databases',  //获取SQL信息列表
    'ResDatabasePass' => '/database?action=ResDatabasePassword',  //修改SQL账号密码
    'SQLToBackup' => '/database?action=ToBackup',            //创建sql备份
    'SQLDelBackup' => '/database?action=DelBackup',          //删除sql备份

    'download' => '/download?filename=',                     //下载备份文件(目前暂停使用)

    # 插件管理
    'deployment' => '/plugin?action=a&name=deployment&s=GetList&type=0',       //宝塔一键部署列表
    'SetupPackage' => '/plugin?action=a&name=deployment&s=SetupPackage',       //部署任务

    
);

五:总结

额,有需要的人可以看看,或者想开发宝塔面板第三方插件的可以研究研究,其他的,其实宝塔面板已经足够我们使用了,没必要去折腾了。

weinxin
我的微信
微信公众号
关注大鸟博客公众号
 
大鸟
    • 123
      123 2

      其实是想借助和宝塔nginx配置实现应用的自动化部署,毕竟宝塔里配置新建网站这些操作也是一套流程化的步骤

    匿名

    发表评论

    匿名网友

    :?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

    确定