开发者

curl is not logging into cpanel

I have this wonderful php class that used to let me login into cpanel and call any path I wanted. Now its broken:

<?php
class cPanel {
  var $cPanelUser   = "";
  var $cPanelPass   = "";
  var $cPanelDomain = "";
  var $cPanelPort   = 0;
  var $cPanelRel    = "";
  var $cPanelRoot   = "";

  function cPanel($cPanelDomain, $cPanelPort, $authUser, $authPass) {
    $this->cPanelDomain = $cPanelDomain;
    $this->cPanelPort = $cPanelPort;
    $this->cPanelUser = $authUser;
    $this->cPanelPass = $authPass;
    //Root path of cPanel to load pages begining with /

    $this->cPanelRoot = "http".($this->cPanelPort==2083 ? "s" : "")."://".$this->cPanelDomain.":".$this->cPanelPort."/frontend/x3/";
    //Relative path of cPanel to load pages not begining with /
    $this->cPanelRel = $this->cPanelRoot."";
  }
  function fetchPage($cPanelPage, $sPostVars = "") {
    $curl = curl_init();
    $loginf = sprintf("[%s]:[%s]", $this->cPanelUser, $this->cPanelPass);

    //Build the path. If it begins with / we go and paste at root
    if ($cPanelPage[0] == '/') {
      $url = $this->cPanelRoot.substr($cPanelPage, 1);
    }
    else {
      //Build the path - if begins with / we go and paste relative
      $url = $this->cPanelRel.$cPanelPage;
    }

    curl_setopt ($curl, CURLOPT_URL, $url."?".$sPostVars);
    curl_setopt ($curl, CURLOPT_TIMEOUT, 30);
    curl_setopt ($curl, CURLOPT_USERAGENT, sprintf("Mozilla/%d.0",rand(4,5)));
    curl_setopt ($curl, CURLOPT_FOLLOWLOCATION, 1);
    curl_setopt ($curl, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt ($curl, CURLOPT_SSL_VERIFYPEER, 0);
    curl_setopt ($curl, CURLOPT_SSL_VERIFYHOST, 0);
    curl_setopt ($curl, CURLOPT_FAILONERROR, 0);
    curl_se开发者_高级运维topt ($curl, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
    curl_setopt ($curl, CURLOPT_USERPWD, $loginf);
    $html = curl_exec ($curl);
    echo 'Errors: ' . curl_errno($curl) . ' ' . curl_error($curl) . '<br><br>';
    echo $html;
    curl_close ($curl);

    //print_r($url);
    return $html;
  }

}

I am using this script on one server and calling trying to login on another server and run a fastastico script. This is the error output: Errors: 7 couldn't connect to host

I've check username and password multiple times.


The error you're getting seems more a connectivity problem than a php/curl related one.

  • Has this machine access to internet?
  • Are its dns servers configured correctly?
  • Can you ping the cPanel host?
  • Is there a new firewall that is blocking you in the cPanel host?
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜