1. ssh2拡張機能をインストールします
(1)window
<span>1</span><span>. 下载 php extension ssh2 下载地址 http:</span>//windows.php.net/downloads/pecl/releases/ssh2/<span>0.12</span>/<span>根据自己PHP的版本去下载</span><span>2</span><span>. 解压完后,会有三个文件,libssh2.dll、php_ssh.dll、php_ssh2.pdb。 </span><span>3</span>. 将 php_ssh.dll、php_ssh2.pdb 放到你的 php 扩展目录下 php/ext/<span> 下。 </span><span>4</span>. 将libssh2.dll 复制到 c:/windows/system32 和 c:/windows/<span>syswow64 各一份 </span><span>5</span>. php.ini中加入 extension=<span>php_ssh2.dll </span><span>6</span><span>. 重启服务器,即可使用php执行ssh连接操作了。 查看phpinfo(),是否有显示php_ssh2扩展加载成功。<br></span>
(2)linux
<span>在linux下需要先安装扩展所需的依赖库 </span><span>1</span><span>.安装libssh2 wget http:</span>//www.libssh2.org/download/libssh2-<span>1.7</span>.<span>0</span><span>.tar.gz tar zxf libssh2</span>-<span>1.7</span>.<span>0</span><span>.tar.gz cd libssh2</span>-<span>1.7</span>.<span>0</span><span>.</span>/configure --prefix=/usr/local/<span>libssh2 make </span>&&<span> make install </span><span>2</span><span>.安装ssh2 wget http:</span>//pecl.php.net/get/ssh2-<span>0.12</span><span>.tgz tar </span>-zxvf ssh2-<span>0.12</span><span>.tgz cd ssh2</span>-<span>0.12</span><span>phpize .</span>/configure --prefix=/usr/local/ssh2 --with-ssh2=/usr/local/<span>libssh2 make #执行完以上过程后,在当前目录下的modules目录下会生成一个ssh2.so文件,这就是扩展PHP所需要的,将该文件拷贝到PHP库的存储目录下在修改PHP的配置文件即可。 cp modules</span>/ssh2.so /usr/local/php/lib/php/extensions/no-debug-non-zts-<span>20131226</span>/<span>#注:PHP库的存储目录可能不同 vim </span>/usr/local/php/lib/<span>php.ini 添加extension</span>=<span>ssh2.so #重启php php </span>-m |grep ssh #可查看是否安装成功
2. ssh2拡張機能はsvnと組み合わせてファイルフォルダーの更新と削除を実現します
( 1) 以下のディレクトリを作成します
ソースコードを保存するファイル (co コードは初回のみ必要で、その後使い切っていきます)
キーを保存するキー
エラーを保存するログ情報、ファイルの更新、レコードの削除
svn ストレージ関連の操作 (https://github.com/getCodeWarehouse/php_ssh2)
(2) svn フックでフックを有効にし、 PHP スクリプトを呼び出す
重要な事 権限を3回変更する必要があります~権限を変更する必要があります~権限を変更する必要があります~
svn up ステータスはU DA、ポップするにはarray_popを使用してください役に立たないデータをアップします
更新と新規追加は同じカテゴリです。ファイルか新しいフォルダーかを判断する必要があります。異なる機能を選択してください。このフォルダーがリモートマシン上に存在する場合、ssh2_sftp_mkdir であることに注意してください。とエラーが報告されます
rmコマンドを使ってフォルダーを削除する理由は、ssh2_sftp_rmdirでは空でないフォルダーを削除できず、パラメーターを追加できないためです
(3) テスト送信svn
ファイルを正常に更新しました
上記では、ssh と php のコンテンツを含む Php ssh2 拡張アプリケーションを紹介しました。PHP チュートリアルに興味のある友人に役立つことを願っています。