【问题标题】:get a file using SFTP with cURL使用带有 cURL 的 SFTP 获取文件
【发布时间】:2011-11-08 00:09:55
【问题描述】:

我似乎无法使用 cURL 通过 SFTP 下载文件。

    $c = curl_init("sftp://$user:$pass@/someserver.com/$filename");
    $fh = fopen($filename, 'w') or die($php_errormsg);
    curl_setopt($c, CURLOPT_PROTOCOLS, CURLPROTO_SFTP);
    curl_setopt($c, CURLOPT_FILE, $fh);
    curl_exec($c);
    curl_close($c);

我做错了吗?非常感谢您的帮助

米歇尔

【问题讨论】:

  • curl_error() 可用于查看错误
  • 您遇到了什么错误?如果它是一个空白屏幕,请在代码中添加一些 echo 或 printf 语句,然后查看它在哪一行失败。

标签: php curl ftp sftp


【解决方案1】:

是的,你有一个 / 继续你的域名。

$c = curl_init("sftp://$user:$pass@someserver.com/$filename");
$fh = fopen($filename, 'w') or die($php_errormsg);
curl_setopt($c, CURLOPT_PROTOCOLS, CURLPROTO_SFTP);
curl_setopt($c, CURLOPT_FILE, $fh);
curl_exec($c);
curl_close($c);

【讨论】:

    【解决方案2】:

    此服务器上使用的 libcurl 必须已编译 sftp 支持。查看返回代码将告诉您它是否受支持。如果没有,那么您必须要求服务器管理员升级 libcurl。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-08
      相关资源
      最近更新 更多