当前位置:51VIP源码软件音乐小游戏下载联盟网络学院组网玩网 → 将SSH与PHP相连接确保数据安全

将SSH与PHP相连接确保数据安全

减小字体 增大字体 作者:佚名  来源:本站整理  发布时间:2008-4-26 0:34:55 我要发布文章
区的循环中,只需要看一下COMMAND_FINISHED。因为你就可以知道你拥有了所有的数据。为了避免无限循环(死循环),可以用一个10秒的超时限制:

  $time_start = time();

  $data = "";

  while( true ){

   $data .= fread($stream, 4096);

   if(strpos($data,"__COMMAND_FINISHED__") !== false){

   echo "okay: command finished\n";

   break;

   }

   if( (time()-$time_start) > 10 ){

   echo "fail: timeout of 10 seconds has been reached\n";

   break;

   }

  }

  在上面的例子中,你最好将stream_set_blocking设为false。

  通过SSH发送文件

  ssh2_scp_send($con, "/tmp/source.dat", "/tmp/dest.dat", 0644);

  如果不能正常工作

  请检查如下的几个方面:

  依照本文检查你操作的每一步

  在服务器端,在sshd_config 中必须启用“PasswordAuthentication yes”。在大多数服务器上默认值是yes,不过有些情况下,你可能需要将下面的一行加入到文件中,即亲自动手打开这个功能:

  /etc/ssh/sshd_config:

  # Change to yes to enable tunnelled clear text passwords

  PasswordAuthentication yes

   如果作了改变,就需要重新启动SSH:

  /etc/init.d/ssh restart



【责任编辑 王凡】

上一页  [1] [2]