调用Cpanel UAPI方法

时间:2016-01-28 09:11:02

标签: cpanel

我有以下简单的脚本来列出ftp帐户  但我无法让它工作,因为我一旦尝试调用构造函数

我有以下错误
document.getElementById("btn").onclick = notify("Passed");

function notify(value){
  return function() {
    alert(value);
  }
}
  

致命错误:未捕获的异常'RuntimeException',消息'There   获取包含路径的env变量是一个问题   socket'in /usr/local/cpanel/php/cpanel.php:146堆栈跟踪:#0   /public_html/uapi.php(4):CPANEL-> __ construct()#1   {main}在第146行的/usr/local/cpanel/php/cpanel.php中抛出

cpanel.php中的第146行

 include '/usr/local/cpanel/php/cpanel.php';
$cpanel = new CPANEL(); // Connect to cPanel - only do this once.

// List FTP account information.
$list_ftp_accts = $cpanel->uapi('Ftp', 'list_ftp');
echo "<pre>";
print_r($list_ftp_accts);

2 个答案:

答案 0 :(得分:3)

根据a post on the cPanel forums,您只能在cPanel的文档根目录中使用LiveAPI,这意味着您的代码需要位于/usr/local/cpanel/base/frontend//usr/local/cpanel/base/3rdparty/中。我试图在WHM插件(它将驻留在/usr/local/cpanel/whostmgr/docroot/)中使用它时碰到了这个,显然这会导致同样的问题。如果您尝试在cPanel或WHM中运行此操作,this page有一些调试步骤,您可以尝试逐步完成。

如果您尝试在其他服务器上或在普通网站的托管帐户中运行此代码,您肯定需要使用其他界面,例如XML或JSON API。遗憾的是,这些内容有些令人困惑,但Guide to WHM API 1页面应该可以帮助您入门。

答案 1 :(得分:0)

我也遇到了同样的错误。

尝试将文件扩展名更改为your_file.live.php,而不是your_file.php。它为我解决了这个问题。

请参阅文档here