Skocz do zawartości
Zaloguj się, aby obserwować  
loop

Cpanel accounting - czeski błąd?

Polecane posty

od dłuższego czasu próbuje założyć konto przy użyciu funkcji WHM: createacct z marnym skutkiem :cry: niestety. Jeżeli ktos mi powie gdzie jest błąd będe bardzo happy :-D

Spłodziłem coś takiego:

 

<?

require ('/usr/local/cpanel/Cpanel/Accounting.php.inc');

# config dostepu do WHM

$whm_host="localhost";

$whm_user="moj_whm_user";

$whm_usessl="1";

$whm_key="moj_accesshash";



# parametry zakładanego konta



$acc_login="user1";

$acc_pass="passusera1";

$acc_plan="plan1";

$acc_domain=$acc_login.".mojadomena.pl";



# zakładanie konta

$status = createacct($whm_host,$whm_user,$whm_key,$whm_usessl,$acc_domain,$acc_login,$acc_pass,$a
cc_plan);



echo $status;

?>

 

przegooglałem sporo for i wydaje mi się ze ten kod jest OK, ale niestety nie działa :-( . Próbowałem z SSL lub bez, zamiast localhost nazwe domeny serwera, nazwa planu zgadza się z tą listowaną w WHM, takie samo konto moge założyć ręcznie z WHM, więc oco chodzi ?!

$status niezwraca mi dokładnie nic !

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

twój problem jest w tym że błędy nie są wyświetlane, a to że ci nie działa mogą być 3 powody

1) Nie zabardzo chce to działać pomiędzy 2 serwerami z WHM/CPanel (wiec zrób to na danym serwerze lub z domowego komputera)

2) brak dostępu do '/usr/local/cpanel/Cpanel/Accounting.php.inc'

3) podajesz zły $whm_key, tan klucz znajdziesz w WHM, wygląda to tak

//Current Access Key:

//------BEGIN WHM ACCESS KEY------

$whm_key="8e0260fe27aef1bcedcef7f7d5cfb45b

cc7613c825ee50c3f70e10eeafcb8c91

1037dce2a9decde316529400be6f118c

5f82a764a2aba8383b656c3496d36a08

255ce6d3278b91dbf8f0bd8fd18df733

c671cf6edf291f0d2c7f1c4645c348a6

fd1932daa23bcfd6d2ffc504382b348d

02fd88d1534dd5b209925a23dd3ff634

3ff5911596826f6ef86e2668f3a70090

800278844da52797a6bb54a64f3dc1d8

a089cc23fdf8d7e6c60aa422e1774240

cbf515f53afeb622fb4439914e1011d1

2a1d4e983196a99dd4f7059684d53435

8c4353dbbc9380f68c73e212f9079f5e

efe6457e154c95f8f5d073e8b938658d

c7201289e12e1132f367c4e6c2fc079d

6f0a488573c8814432da9e5c7016efd3

7147d7013302838552569532785411e1

52f1c7d27ff4081650472bbb38fbd019

0400c7dc3443a7d3bca4d89195fd64e6

084b0b4931222842085e94362df80912

024b2195c9b27241ab398045f64f9d59

7425d604097fe2a9539315d6796471ae

43113c3707af8daac279a11r4c4af431

8e626aa20b64051d9c58a7c1b421c95b

c9476cf715f01840748a5126a5d19fff

1346abd31e0d1fc494f05d75649a617c

097c7c12fce6c57767125818345dabbd

966f38c08677e64a073a23dd1ffd24ae";

//-------END WHM ACCESS KEY-------

 

a oto biblioteka do której mozesz nie mieć dostępu "Accounting.php.inc"

<?php





global $cpanelaccterr;











function suspend ($host,$user,$accesshash,$usessl,$suspenduser) {



$result = whmreq("/scripts/remote_suspend?user=${suspenduser}",$host,$user,$accesshash,$usessl);



if ($cpanelaccterr != "") { return; }



return $result;



}



function unsuspend ($host,$user,$accesshash,$usessl,$suspenduser) {



$result = whmreq("/scripts/remote_unsuspend?user=${suspenduser}",$host,$user,$accesshash,$usessl);



if ($cpanelaccterr != "") { return; }



return $result;



}



function killacct ($host,$user,$accesshash,$usessl,$killuser) {



$result = whmreq("/scripts/killacct?user=${killuser}&nohtml=1",$host,$user,$accesshash,$usessl);



if ($cpanelaccterr != "") { return; }



return $result;



}



function showversion ($host,$user,$accesshash,$usessl) {



$result = whmreq("/scripts2/showversion",$host,$user,$accesshash,$usessl);



if ($cpanelaccterr != "") { return; }



return $result;



}



function createacct ($host,$user,$accesshash,$usessl,$acctdomain,$acctuser,$acctpass,$acctplan) {



$result = whmreq("/scripts/wwwacct?remote=1&nohtml=1&username=${acctuser}&password=${acctpass}&domain=${acctdomain}&plan=${acctplan}",$host,$user,$accesshash,$usessl);



if ($cpanelaccterr != "") { return; }



return $result;



}







function listaccts ($host,$user,$accesshash,$usessl) {



$result = whmreq("/scripts2/listaccts?nohtml=1&viewall=1",$host,$user,$accesshash,$usessl);



if ($cpanelaccterr != "") { return; }







       $page = split("n",$result);



foreach ($page as $line) {



 list($acct,$contents) = split("=", $line);



 if ($acct != "") {



	 $allc = split(",", $contents);



	 $accts[$acct] = $allc;



 }



       }



       return($accts);



}



function listpkgs ($host,$user,$accesshash,$usessl) {



$result = whmreq("/scripts/remote_listpkg",$host,$user,$accesshash,$usessl);



if ($cpanelaccterr != "") { return; }











       $page = split("n",$result);



foreach ($page as $line) {



 list($pkg,$contents) = split("=", $line);



 if ($pkg != "") {



	 $allc = split(",", $contents);



	 $pkgs[$pkg] = $allc;



 }



       }



       return($pkgs);



}



function whmreq ($request,$host,$user,$accesshash,$usessl) {











$cleanaccesshash = preg_replace("'(r|n)'","",$accesshash);



       $authstr = $user . ":" . $cleanaccesshash;



$cpanelaccterr = "";











if (function_exists("curl_init")) {



 $ch = curl_init();



 if ($usessl) {



	 curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,0);                



	 curl_setopt($ch, CURLOPT_SSL_VERIFYHOST,0);



	 curl_setopt($ch, CURLOPT_URL, "https://${host}:2087" . $request);



 } else {



	 curl_setopt($ch, CURLOPT_URL, "http://${host}:2086" . $request);



               }



 curl_setopt($ch, CURLOPT_HEADER, 0);



 curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);



        $curlheaders[0] = "Authorization: WHM $authstr";



               curl_setopt($ch,CURLOPT_HTTPHEADER,$curlheaders);



 $data=curl_exec ($ch);



 curl_close ($ch);



} elseif (function_exists("socket_create")) {



 if ($usessl) {



	 $cpanelaccterr = "SSL Support requires curl";



	 return;



 }



 $service_port = 2086;



 $address = gethostbyname($host);



 $socket = socket_create (AF_INET, SOCK_STREAM, 0);



 if ($socket < 0) {



         $cpanelaccterr = "socket_create() failed";



	 return;



 }



 $result = socket_connect ($socket, $address, $service_port);



 if ($result < 0) {



         $cpanelaccterr = "socket_connect() failed";



	 return;



 }



 $in = "GET $request HTTP/1.0n";



 socket_write($socket,$in,strlen($in));	



 $in = "Connection: closen";



 socket_write($socket,$in,strlen($in));	



 $in = "Authorization: WHM $authstrnnn";



 socket_write($socket,$in,strlen($in));	







 $inheader = 1;



 while(($buf = socket_read($socket, 512)) != false) {



   if (!$inheader) {



    $data .= $buf;



          }



   if(preg_match("'rnrn$'s", $buf)) {



	 $inheader = 0;



   }



   if(preg_match("'nn$'s", $buf)) {



	 $inheader = 0;



   }



   if(preg_match("'rn$'s", $buf)) {



	 $inheader = 0;



   }



 }







} else {



 $cpanelaccterr = "php not compiled with --enable-sockets OR curl";



 return;



}







return $data;	



}







?>

 

jezeli nie widzisz błędów, to poszukaj w cpanelu, posiada logi błędów

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

problem sie okazał w samym serwerze. Jaki niewiem, ale po przeniesieniu na inny dziala.

 

Dzięki za źródło accounting.php - sie przyda :)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Zaloguj się, aby skomentować

Będziesz mógł dodać komentarz po zalogowaniu się



Zaloguj się
Zaloguj się, aby obserwować  

×