【发布时间】:2015-05-31 20:13:36
【问题描述】:
我与另一家正在从常规 FTP 迁移到 SFTP 以进行连接的公司合作。他们告诉我,我现有的用户名和密码是相同的,但我现在需要通过端口 22 上的 SFTP 连接。我有几个 PHP 脚本可以做一些基本的事情,比如连接到他们的网站,获取目录列表,并每天上传和下载一个文件。这些在 FTP 上都可以正常工作,所以我只需要将协议换成 SFTP。
在做了一些研究之后,似乎一致认为 phpseclib 是使用 PHP 执行 SFTP 的最简单和最强大的方法。我的服务器正在运行 Linux 和 Apache。我下载了该库并尝试仅运行 phpseclib 给出的基本示例,但出现错误:
注意:在第 244 行的 System/SSH/Agent.php 中找不到 SSH_AUTH_SOCK
当我查看 Agent.php 时,我看到脚本正在寻找要在 $_SERVER 或 $_ENV 中定义的 SSH_AUTH_SOCK。我一定遗漏了一些明显的东西,但我不知道如何克服这个错误。
【问题讨论】: