PHP ssh2.sftp停止工作

时间:2017-08-18 16:05:20

标签: php ubuntu

下面是已经运行了很长时间的代码,本周它停止了工作。我把它缩小到了'fopen'语句失败的界限。如果我评论fopen线路,我会得到正确的回声。起初我以为这是远程服务器上的权限问题,但我也有同样的事情发生在不同的服务器上。

我的确没有收到错误消息。我基本上得到一个浏览器消息,该页面无法加载。

这是在Ubuntu服务器上的PHP 5.5.9上运行的。我们确实在8/11收到了来自ubuntu的一些php软件包的更新。

以下是代码:

$connection = ssh2_connect('fe01.xyz.com', 22);
if (!$connection) die('Connection failed');
echo "connected<br>";
$u=ssh2_auth_password($connection, 'username', 'password');
if (!$u) :
   echo "auth failed ";
   exit;
else:
  echo "auth success<br>";
endif;

$outdata=file_get_contents("files/ulti99.csv");
$resSFTP = ssh2_sftp($connection);  
if (!$resSFTP):
  echo "SFTP Connection Failed";
  exit;
else:
  echo "SFTP Connection Succuess<br>";
endif;  

$resFile = fopen("ssh2.sftp://{$resSFTP}/ulti99.csv", 'w');  // failing
echo "after open";
fwrite($resFile, $outdata );
fclose($resFile);

任何帮助都将不胜感激。

2 个答案:

答案 0 :(得分:0)

也许您更改了服务器中的文件权限。

答案 1 :(得分:0)

在ubuntu 14-04机器上试验同样的问题。与试图连接file_put_contents(“ssh2.sftp:// {Resource id#220} / ....”,$ content)的库的sftp连接大约2周后不再起作用且没有错误,浏览器响应“ERR_EMPTY_RESPONSE”

我无法弄清楚问题是什么...... 在file_put_contents的这个时刻,系统崩溃......