php连接服务器进行服务器命令操作

互联网 19-10-31

安装PHP SSH2扩展

### ubuntu安装php链接服务器需要php扩展:

sudo apt-get install libssh2-1 php-ssh2

在Windows环境下安装

下载 php extension ssh2下载地址 http://windows.php.net/downloads/pecl/releases/ssh2/0.12/

1、解压完后,会有三个文件,libssh2.dll、php_ssh.dll、php_ssh2.pdb。

2、将 php_ssh.dll、php_ssh2.pdb 放到你的 php 扩展目录下 php/ext/ 下。

3、将libssh2.dll 复制到 c:/windows/system32 和 c:/windows/syswow64 各一份

4、php.ini中加入 extension=php_ssh2.dll

5、重启apache,即可使用php执行ssh连接操作了。

在linux环境下安装

PHP SSH2扩展需要的依赖库

openssl: 加密算法集合,C语言实现

libssh2: ssh2协议库库,C语言实现

PECL/ssh2: libssh2的php扩展,允许php程序调用libssh2中的函数

依赖关系:PECL/ssh2 –> libssh2 –> openssl安装需要的扩展包

wget  http://www.libssh2.org/download/libssh2-1.4.2.tar.gz   tar zxf libssh2-1.4.2.tar.gz   cd libssh2-1.4.2   ./configure && make && make install
wget  http://pecl.php.net/get/ssh2-0.11.3.tgz   cd ssh2-0.11.3   phpize   (如果报错命令没有找到,apt-get install php5-dev)   ./configure —with-ssh2 && make && make install
cd  /etc/php5/cgi   vim  php.ini

添加项:extension=/usr/lib/php5/20090626/ssh2.so ssh2.so是编译ssh2时得到的模块,上面是模块的位置。

cd  /etc/php5/cli   vim  php.ini

添加项:extension=/usr/lib/php5/20090626/ssh2.so ssh2.so是编译ssh2时得到的模块,上面是模块的位置。 重启web服务器

/etc/init.d/lighttpd restart
[root@localhost ~]php -m | grep s

php代码使用

public function actionTestServer() {     //登陆linux的ssh2用户名     $ssh_user='root';     //登陆linux的密码     $ssh_pwd='';     //默认端口号22     $ssh_port='22';     //服务器IP地址     $ssh_host='120.77.62.13';     //先测试拓展是否安装并开启     if(!function_exists("ssh2_connect")){         exit('SSH扩展没有安装或者没有安装成功');     }     //建立ssh2连接     $ssh2 = ssh2_connect($ssh_host, $ssh_port);     if(!$ssh2){         exit('连接服务器失败');     }else{         echo '成功连接上了服务器';     }     //连接成功后进行密码验证,没验证无法进行其他操作。     if(!ssh2_auth_password( $ssh2, $ssh_user,  $ssh_pwd )){         return false;     }     //shell脚本语句     $e="/etc/init.d/nginx restart >> /tmp/nginx_restart_".date('Ymd').".log";     //通过ssh2_exec执行语句     ssh2_exec($ssh2, $e); }

更多PHP相关知识,请访问PHP中文网!

以上就是php连接服务器进行服务器命令操作的详细内容,更多内容请关注技术你好其它相关文章!

来源链接:
免责声明:
1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险
2.本文版权归属原作所有,仅代表作者本人观点,不代表本站的观点或立场
标签: ssh
上一篇:php获取远程图片并下载保存到本地的方法分析 下一篇:PHP 核心特性之命名空间

相关资讯