首先需要安装php_ssh2扩展,这里就不再赘述了。

脚本实例:

$connection = ssh2_connect('127.0.0.1', 22);

ssh2_auth_password($connection, 'root', 'your password');

$stream = ssh2_exec($connection, "cd /; ls");

stream_set_blocking( $stream, true );

$response = stream_get_contents($stream);

var_dump($response);

上面的脚本执行了两条命令(用分号分隔):

1、cd /   切换到根目录

2、ls  列出所有文件

测试环境为PHP7.1,执行结果如下:

为什么要使用 stream_set_blocking 呢?

PHP手册里这样写到:

该参数的设置将会影响到像 fgets() 和 fread() 这样的函数从资源流里读取数据。 在非阻塞模式下,调用 fgets() 总是会立即返回;而在阻塞模式下,将会一直等到从资源流里面获取到数据才能返回。

这样就很明确了,如果不设置成阻塞模式,php还没等到ssh服务器返回结果,脚本就执行完了,$response就会为空。

但是有些场景下,我们不关心返回值的时候,就可以设置成非阻塞模式了。

例如一些比较耗时的命令,如果是一直等待的话,也会导致一些不必要的麻烦。

php ssh 管理服务器,PHP连接ssh服务器相关推荐

  1. 网页打开手机连接到服务器失败,手机服务器无法连接到服务器失败

    手机服务器无法连接到服务器失败 内容精选 换一换 需要准备一台Linux系统的物理服务器或虚拟机作为镜像制作服务器,即宿主机,并为宿主机安装Linux操作系统.以CentOS 7.3 64bit操作系 ...

  2. 服务器怎么连接?服务器远程连接图文教程Windows如何远程连接服务器?Linux服务器如何远程登录?远程连接服务器命令

    服务器怎么连接?服务器远程连接图文教程 Windows如何远程连接服务器?Linux服务器如何远程登录?远程连接服务器命令 服务器操作系统可以实现对计算机硬件与软件的直接控制和管理协调,任何计算机的运 ...

  3. 修改密码后服务器断开连接,SSH无需密码登录服务器且保持连接不断开的方法

    SSH无需密码登录服务器 Mac 无密码 SSH 登录服务器,只需要简单三步,不再需要记住账号密码,快速进入服务器 测试H1 dfsdfsf 测试H2 dfsdfsf 测试H3 dfsdfsf 测试H ...

  4. 使用 SSH 免密码登录连接远程服务器

    进入本地电脑的 bash 终端 ssh-keygen -t rsa -P '' -C "your.address@gmail.com" 可选参数 -C 表示密钥的备注信息 -t r ...

  5. SSH如何通过公钥连接云服务器

    导读 通常我们连接远程服务器(linux)windows下通过putty或xshell等工具远程连接.linux下可以直接通过ssh命令连接.其实这两者都是一致的,都是通过ssh协议进行传输. 如果我 ...

  6. Tremux使用ssh秘钥远程连接云服务器(腾讯云,阿里云等)

    打开termux, 输入 ssh-keygen -t rsa -f ~/.ssh/my-keyfilename -C username 其中 `username` 可以是任意名称 查看生成的公钥,然后 ...

  7. MongoDB的客户端管理工具--nosqlbooster 连接MongoDB服务器

    nosqlbooster的官网地址为https://nosqlbooster.com.大家如果想直接下载,可以登入下载网址https://nosqlbooster.com/downloads. 下载w ...

  8. 手机在泰国显示无服务器,怎么连接泰国服务器

    怎么连接泰国服务器 内容精选 换一换 建议不要在分析任务执行过程中卸载,否则可能出现异常.IDE插件只支持以Web模式卸载工具,不支持以CLI模式卸载工具.没有正在运行中的任务.确认卸载:输入y 后回 ...

  9. 如何把程序挂在远端服务器python_Pycharm连接远程服务器并实现远程调试的实现...

    当需要远程办公时,使用pycharm远程连接服务器时必要的. PyCharm提供两种远程调试(Remote Debugging)的方式: 配置远程的解释器(remote interpreter) 配置 ...

  10. 服务器:连接云服务器的端口是什么?

    连接云服务器端口是什么?端口一般是指TCP/IP协议中的端口,端口号的范围从0到65535, 一般连接 Linux 云服务器要放通22号端口,连接 Windows 服务器需要开放3389端口. 338 ...

最新文章

  1. Docker 简介以及构架剖析
  2. Android 曝光采集:以商品 view 曝光量的统计为例
  3. 谁更了解你,是女朋友吗。不,是这些推荐算法。
  4. IP头、TCP头、UDP头详解以及定义
  5. 弹性布局----Flex
  6. echarts 词云_python Flask+爬虫制作股票查询、历史数据、股评词云网页
  7. Bengio:我留在学术圈为全人类作贡献,而不是为某一个公司赚钱
  8. Js数组排序函数sort()介绍
  9. 2-1-XML和约束文档
  10. 金三银四旗开得胜!javagui界面
  11. PyPDF2.utils.PdfReadError: Unexpected destination '/__WKANCHOR_2'
  12. 操作虚拟dom模拟react视图渲染
  13. 网管学习日记-ospf认证
  14. ConcurrentLinkedQueue 的outofMemory错误解决方案
  15. 不要在考虑需求之前更多的在意你的职业镀金
  16. Android事件机制深入探讨(一)
  17. Map2Shp地理格式转换器——专业mapgis格式无损批量转换工具_map2shp_新浪博客
  18. [SSL_CHX][2021-08-19]前缀和
  19. 【pyqt5学习】—— 滑动条Qslider、计数器QSpinBox学习
  20. 商业研究(10):比呀比-海淘电商-海外正品直邮-高品质跨境购物平台

热门文章

  1. 指针指向字符串常量和给字符数组赋值字符串常量的本质
  2. 孩子:爸爸妈妈你们离婚吧
  3. 企业组织内部账号步数兑换小程序开发
  4. 华为全栈人工智能-AI发展新趋势
  5. Python保留小数位数和保留有效数字
  6. linux bsp格式,bsp是什么格式文件?bsp文件如何打开?
  7. ThingMap一键城市2.0重新出发:快速生成三维城市
  8. Python非全日制培训
  9. 数据结构 排序 思考题2
  10. 计算机组成原理中指令的四个工作周期