如何使用PHP从我的服务器上读取第三方服务器上的数据文件

时间:2018-10-03 10:10:17

标签: php server connection

主机(第三方)服务器上有一个文件,该文件正在由主机数据中心在每周的每一天进行更新并提供给我。

主机数据中心已将我服务器的IP地址列入白名单。

我已通过Sublime Text 3使用设置成功登录到主机数据中心服务器:

  • type = sftp,
  • host =(主机数据中心的服务器IP地址)
  • port = 22,
  • username =(他们给我的用户名)
  • password =(他们给我的密码)
  • remote_path =(他们给我的路径。)

我不想手动登录服务器并物理提取数据文件以在我的网站上使用-我想通过PHP或任何其他方法以编程方式进行操作。

有人成功做到了吗?如果是这样,您能分享您的做法吗?

谢谢。

以下是“重复”问题和答案的结果,以及为什么它们不起作用,因此使重复项不是重复的@riggsfolly:

  1. $ connection = ssh2_connect('123.123.123.123',22);结果:致命错误:在...中调用未定义的函数ssh2_connect()
  2. file_get_contents('ssh2.sftp:// user:pass@example.com:22 / path / to / filename');警告中的结果:file_get_contents():无法找到包装“ ssh2.sftp”-在配置PHP时是否忘记启用它?

ssh2_scp_recv条建议的测试结果失败:

$connection = ssh2_connect('123.123.123.123', 22) or die("Cannot connect to server");
ssh2_auth_password($connection, 'assigned-username', 'assigned-password') or die("Cannot authenticate to server");
ssh2_scp_recv($connection, '/remote-server/assigned-path/test.txt', '/my/server/local/path/test.txt');
exit;

结果:致命错误:在...中调用未定义的函数ssh2_connect()

更新:我的数据中心的系统工程师告诉我有关PHP SSH2 extension的以下信息:

  

可以通过pecl安装模块“ ssh2”,但是当前   一个“ alpha”版本(非常不安全,因此不应安装在   生产服务器),并且一年多没有更新。

嗯,现在呢?

问题已解决!

要使用ssh2_connect()功能,您需要安装并激活PHP SSH2 extension。从我的所有挖掘,谷歌搜索和研究中,都没有发现该扩展不能在PHP中使用(即装即用),也没有人提到需要安装和激活该扩展。但是现在我们知道了:)我希望这可以帮助您!

0 个答案:

没有答案