博主信息
博文 1
粉丝 0
评论 0
访问量 1709
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于php ssh2_connect函数设置超时时间
我的笔记
原创
1710人浏览过

最终要求是在添加过程中对服务器的连接过程不超过10秒,换句话说10秒的时候如果还没能连接就断开连接操作立马给客户端予以响应,这样以免造成客户端假S现象。

关于php ssh扩展也不是很熟练,官网看了下ssh2_connect这个函数貌似也没有可直接设置超时时间的参数选项,于网上搜了半天,很遗憾,关于这方面的文章很少,而且都是说一些废话或者N年前某人提问下面零回复的文章。

最后终于在https://stackoverflow***这个网站上一个外国人跟我遇到一样的问题,下面也有大佬给出了很实用的解决方法。从这位大佬的回答中了解到,php ssh2_connect 是通过socket_connect去工作,所以归根到底我们要去设置socket_connect的超时时间,socket_connect依赖于php ini配置参数default_socket_timeout,默认设置为60秒,所以最终解决方案是在执行ssh函数的时候对socket_connect设置指定的超时时间,下面上代码:

实例

ini_set('default_socket_timeout', 2); //设置2秒超时
$connection = ssh2_connect('1.1.1.1');

不得不说外国人的干货是真的多。


原文链接


本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学