typecho结合宝塔API查看服务器信息

反诈示警:如遇到文章内跳转至别的网站或产生需要交钱,交易等行为,均为诈骗行为,请谨慎对待。对于网上兼职、刷单、刷信誉的就是诈骗,请勿相信!需要提供身份证明、短信验证和短信链接点击都是诈骗, 请不要提供!同时请下载“国家反诈中心”App能自查自检,规避诈骗电话,免遭损失。

可以通过宝塔给出的API接口,在网站上直接看到服务器当前的信息状态

打开宝塔面板的面板设置-api接口,如图

typecho结合宝塔API查看服务器信息,插图,来源:资源仓库www.zycang.com

这里提到的开启API后,必需在IP白名单列表中的IP才能访问面板API接口,除了必须要填入127.0.0.1之外,还有一个ip就是你当前访问服务器的ip,比如如果你是电脑的软件,那就是电脑的ip地址,如果是网站,那就是网站的ip地址

宝塔api说明手册pdf地址:https://www.bt.cn/api-doc.pdf

typecho主题里面,设置了获取宝塔路径和接口密钥

typecho结合宝塔API查看服务器信息,插图1,来源:资源仓库www.zycang.com

通过ECharts.js插件展示,下面代码为functions.php里面的执行函数

/* 获取服务器状态 */
function _getServerStatus($archive)
{
    $archive->response->setStatus(200);

    $api_panel = Helper::options()->BTPanel;
    $api_sk = Helper::options()->BTKey;
    if (!$api_panel) return $archive->response->throwJson([
        "code" => 0,
        "data" => "宝塔面板地址未填写!"
    ]);
    if (!$api_sk) return $archive->response->throwJson([
        "code" => 0,
        "data" => "宝塔接口密钥未填写!"
    ]);
    $request_time = time();
    $request_token = md5($request_time . '' . md5($api_sk));
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $api_panel . '/system?action=GetNetWork');
    curl_setopt($ch, CURLOPT_NOSIGNAL, 1);
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT_MS, 3000);
    curl_setopt($ch, CURLOPT_TIMEOUT_MS, 3000);
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS,  array("request_time" => $request_time, "request_token" => $request_token));
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    $response  = json_decode(curl_exec($ch), true);
    curl_close($ch);
    $archive->response->throwJson(array(
        /* 状态 */
        "status" => $response ? true : false,
        /* 信息提示 */
        "message" => $response['msg'],
        /* 上行流量KB */
        "up" => $response["up"] ? $response["up"] : 0,
        /* 下行流量KB */
        "down" => $response["down"] ? $response["down"] : 0,
        /* 总发送(字节数) */
        "upTotal" => $response["upTotal"] ? $response["upTotal"] : 0,
        /* 总接收(字节数) */
        "downTotal" => $response["downTotal"] ? $response["downTotal"] : 0,
        /* 内存占用 */
        "memory" => $response["mem"] ? $response["mem"] : ["memBuffers" => 0, "memCached" => 0, "memFree" => 0, "memRealUsed" => 0, "memTotal" => 0],
        /* CPU */
        "cpu" => $response["cpu"] ? $response["cpu"] : [0, 0, [0], 0, 0, 0],
        /* 系统负载 */
        "load" => $response["load"] ? $response["load"] : ["fifteen" => 0, "five" => 0, "limit" => 0, "max" => 0, "one" => 0, "safe" => 0],
    ));
}

以上为部分代码展示,仅作为参考研究,提示:typecho程序里面的Joe主题内置有这个功能,喜欢的朋友可以去找找这款主题

以下为typecho结合宝塔API查看服务器信息的图片展示

typecho结合宝塔API查看服务器信息,插图2,来源:资源仓库www.zycang.com

如需 WordPress 优化加速、二次开发、网站维护、企业网站建设托管等服务,点此联系我 | 近期站内热门福利推荐:
文章版权及转载声明

本文地址:https://www.zycang.com/82645.html
文章转载或复制请以超链接形式并注明来源出处。 本文最后更新于:2022-10-11 20:46:20
声明:某些文章或资源具有时效性,若有 错误 或 所需下载资源 已失效,请联系客服QQ:11210980

喜欢就支持一下吧
点赞40赞赏 分享
相关推荐
评论 抢沙发

请登录后发表评论