Plesk API和Curl不起作用



我有一个脚本使用plesk api创建FTP帐户。该脚本完美地启用了我们在新提供商的新副总裁。

脚本不再起作用,我会收到这样的错误:

卷曲错误编号:7卷曲错误:无法连接到xx.xx.xxx.xxx许可。

看来卷发不起作用。我尝试的是将PHP支持从FastCGI更改为Plesk中的Apache模块,并且错误消息消失了,但是Plesk API什么都没做,尽管页面的负载时间比我使用FastCGI更长的时间更长它做点什么。

我还向防火墙添加了端口8443以进行传入和外向。

我正在使用plesk 11,我的脚本看起来像这样。

// Plesk login gegevens
$host   = "**********";
$login  = "**********";
$pass   = "**********";
$port   = 8443;

// Maak de FTP map aan
$data =<<<EOF
<packet version="1.6.3.5">
<ftp-user>
<add>
<name>John</name>
<password>Doe1234</password>
<home>/private/John_Doe/</home>
<create-non-existent>true</create-non-existent>
<webspace-id>1</webspace-id>
</add>
</ftp-user>
</packet>
EOF;
sendCommand($data, $login, $pass, $host, $port);
function write_callback($ch, $data) 
{
    // echo $data;
    return strlen($data);
}
function sendCommand($data, $login, $passwd, $host, $port=8443) 
{
    echo $data;
    $script = "enterprise/control/agent.php";
    $url = "https://$host:$port/$script";
    $headers = array(
    "HTTP_AUTH_LOGIN: $login",
    "HTTP_AUTH_PASSWD: $passwd",
    "HTTP_PRETTY_PRINT: TRUE",
    "Content-Type: text/xml",
    );
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
    curl_setopt($ch, CURLOPT_HTTPHEADER, &$headers);
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_WRITEFUNCTION, 'write_callback');
    curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
    curl_setopt($ch, CURLOPT_VERBOSE, 1);
    $result = curl_exec($ch);
    if (!$result) 
    {
         echo "nn-------------------------ncURL error number:".curl_errno($ch);
         echo "nncURL error:".curl_error($ch);
    }
    curl_close($ch);
    return;
}

我不是Plesk或Linux人,但我想在此讨论中做出自己的贡献,

我有一个脚本WICH使用Plesk API来创建FTP帐户。这 直到我们在新的提供商中搬到了新的VPS。

这个说法清楚地表明问题不是您的代码,而是您的VPS。

问题也许!

1)客户端许可通过API-RPC更新Parallels面板,请尝试使用Admin凭据。

发现的问题:Plesk 9.2。因此,它可以在下一个版本中修复,但我不确定。来源

2)检查SELINUX是否禁用,无论是否禁用并检查并检查。您的下一个问题必须是如何禁用Selinux 。答案在这里有据可查的

3)您应该安装 mod_suphp 并遵循我们的教程并将工作。在这里查看更多。

我刚刚总结,很少有人认为希望它会有所帮助。

我不确定,但请参阅下面的URL,我认为这对您很有帮助。

Plesk API

中的异常HTTP标头

根据trig

的不寻常的HTTP标头

或阅读

下面答案由RDO 根据上述URL

  1. Plesk使用自己的标头。在自定义HTTP请求中,您可以添加任何有效的标头,例如某些Web服务器添加自己的标头,例如" power by:xxxx",所以可以。

  2. 漂亮的XML输出需要漂亮的打印标头。

  3. http_auth_login标头包含面板用户登录。http_auth_passwd标头包含面板用户密码。不需要curlopt_userpwd。

  4. 尝试使用以下选项:$ ch = curl_init();

    curl_setopt($ ch,curlopt_ssl_verifyhost,0);

    curl_setopt($ ch,curlopt_ssl_verifypeer,false);

    curl_setopt($ ch,curlopt_returntransfer,true);

    curl_setopt($ ch,curlopt_httpheader,$ headers);

    curl_setopt($ ch,curlopt_url,$ url);

    curl_setopt($ ch,curlopt_encoding,'utf-8');

    curl_setopt($ ch,curlopt_postfields,$ packet);

    curl_setopt($ ch,curlopt_timeout,1200);//等待20分钟

    $ wendesp = curl_exec($ ch);

假设您记得更改主机,您的Plesk用户和密码是否在移动后重新创建?尝试使用脚本中的凭据直接在VPS上登录Plesk,以确保帐户还可以。

最新更新