首页 / PHP / php连接服务器进行服务器命令操作
php连接服务器进行服务器命令操作
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了php连接服务器进行服务器命令操作,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2432字,纯文字阅读大概需要4分钟。
内容图文
![php连接服务器进行服务器命令操作](/upload/InfoBanner/zyjiaocheng/127/3811aa24f562401c9f80c3da6dacabb8.jpg)
安装PHP SSH2扩展
### ubuntu安装php链接服务器需要php扩展:
sudo apt-get install libssh2-1 php-ssh2
在Windows环境下安装
下载 php extension ssh2下载地址 http://windows.php.com/downloads/pecl/releases/ssh2/0.12/
根据自己PHP的版本去下载,我使用的WAMPSERVER2.5(64bit),PHP版本为5.5.12,是线程安全的,
所以下载的是php_ssh2-0.12-5.5-ts-vc11-x64.zip
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连接操作了。
6、查看phpinfo(),是否有显示php_ssh2扩展加载成功。
在linux环境下安装
PHP SSH2扩展需要的依赖库
openssl: 加密算法集合,C语言实现
libssh2: ssh2协议库库,C语言实现
PECL/ssh2: libssh2的php扩展,允许php程序调用libssh2中的函数
依赖关系:PECL/ssh2 –> libssh2 –> openssl
安装需要的扩展包
安装libssh2
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
安装PECL/ssh2
wget http://pecl.php.com/get/ssh2-0.11.3.tgz cd ssh2-0.11.3 phpize (如果报错命令没有找到,apt-get install php5-dev) ./configure —with-ssh2 && make && make install
修改php配置信息
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
查看是否加载了ssh2
[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连接服务器进行服务器命令操作的详细内容。
内容总结
以上是互联网集市为您收集整理的php连接服务器进行服务器命令操作全部内容,希望文章能够帮你解决php连接服务器进行服务器命令操作所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。