溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

php如何實現(xiàn)登錄tplink WR882N獲取IP和重啟的方法

發(fā)布時間:2021-06-25 12:29:26 來源:億速云 閱讀:160 作者:小新 欄目:開發(fā)技術

這篇文章主要為大家展示了“php如何實現(xiàn)登錄tplink WR882N獲取IP和重啟的方法”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“php如何實現(xiàn)登錄tplink WR882N獲取IP和重啟的方法”這篇文章吧。

具體如下:

服務器一上傳大數(shù)據tplink WR882N就容易卡住, 然后上不了網. 打算在服務器定時檢測, 如發(fā)現(xiàn)連續(xù)10次無法訪問指定網站, 則自動執(zhí)行重啟操作(該部分未實現(xiàn), 請自己添加).

gg了一圈發(fā)現(xiàn)只有舊版的tplink登錄腳本, 試了很久沒成功 – 家里的tplink 740N倒是沒問題.

于是只能直接寫了, 簡單的腳本如下, 可自己擴展

該腳本只適用WR882N, 其他型號未測試.

<?php
// TPLINK WR882N 管理腳本
function getContent($url)
{
  // 解悉url
  $temp = parse_url($url);
  $query = isset($temp['query']) ? $temp['query'] : '';
  $path = isset($temp['path']) ? $temp['path'] : '/';
  $header = array (
    "POST {$path}?{$query} HTTP/1.1",
    "Host: {$temp['host']}",
    "Content-Type: text/xml; charset=utf-8",
    'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8',
    'Cookie: Authorization=Basic ' . base64_encode("admin:admin"),  // 注意這里的cookie認證字符串
    "Referer: http://{$temp['host']}/",
    'User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; SV1)',
    "Content-length: 380",
    "Connection: Close"
  );
  $curl = curl_init(); // 啟動一個CURL會話
  curl_setopt($curl, CURLOPT_URL, $url); // 要訪問的地址
  curl_setopt($curl, CURLOPT_HTTPHEADER, $header); //設置頭信息的地方
  curl_setopt($curl, CURLOPT_TIMEOUT, 60); // 設置超時限制防止死循環(huán)
  curl_setopt($curl, CURLOPT_HEADER, 0); // 顯示返回的Header區(qū)域內容
  curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); // 獲取的信息以文件流的形式返回
  $content = curl_exec($curl); // 執(zhí)行操作
  curl_close($curl);
  return $content;
}
function getIp(){
  $content = getContent("http://192.168.1.1/userRpm/StatusRpm.htm");
  preg_match('/wanPara=new Array\((.+?)<\/script>/s',$content,$all);
  $ip = "0";
  if(!empty($all[1])){
    $data = trim($all[1]);
    $data = str_replace("\r\n","",$data);
    $data = explode(",",$data);
    $ip = str_replace('"','',$data[2]);
    $ip = trim($ip);
  }
  return $ip;
}
function reboot(){
  $url = "http://192.168.1.1/userRpm/SysRebootRpm.htm?Reboot=%D6%D8%C6%F4%C2%B7%D3%C9%C6%F7";
  getContent($url);
}
$info = getIp();
echo $info;

以上是“php如何實現(xiàn)登錄tplink WR882N獲取IP和重啟的方法”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業(yè)資訊頻道!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

php
AI