解析用SSH與PHP相連接 確保數(shù)據(jù)傳輸?shù)陌踩?3)_PHP教程
推薦:解析Windows XP系統(tǒng)下安裝apache+php+mysqlApache和mysql的安裝較簡單,主要是安裝前請保證80端口未被占用 比如 iis 以前安裝過的apache mysql 先停止運(yùn)行phpmyadmin,主要是配置文件的問題,把phpMyAdmin安裝目錄下Libraries目錄下面的Config.default.php復(fù)制到PHPmyAdmin根目錄下,改 名為Config.in
小提示:
有時服務(wù)器忙碌,或者一個連接出錯,緩沖區(qū)沒有數(shù)據(jù),PHP腳本就會停止從一個命令輸出(即使命令并沒有完成�。┲惺占瘮�(shù)據(jù)。你可以為此進(jìn)行如下的操作:
ssh2_exec($con, ‘ls -al; echo “__COMMAND_FINISHED__”’ );
現(xiàn)在,在你不斷地檢查緩沖區(qū)的循環(huán)中,只需要看一下COMMAND_FINISHED。因?yàn)槟憔涂梢灾滥銚碛辛怂械臄?shù)據(jù)。為了避免無限循環(huán)(死循環(huán)),可以用一個10秒的超時限制:
$time_start = time();
$data = “”;
while( true ){$data 。= fread($stream, 4096);
if(strpos($data,“__COMMAND_FINISHED__”) !== false){
echo “okay: command finished\n”;
break;
}
if( (time()-$time_start) 》 10 ){
echo “fail: timeout of 10 seconds has been reached\n”;
break;
}
}
在上面的例子中,你最好將stream_set_blocking設(shè)為false。
通過SSH發(fā)送文件
ssh2_scp_send($con, “/tmp/source.dat”, “/tmp/dest.dat”, 0644);
如果不能正常工作
請檢查如下的幾個方面:
依照本文檢查你操作的每一步
在服務(wù)器端,在sshd_config 中必須啟用“PasswordAuthentication yes”。在大多數(shù)服務(wù)器上默認(rèn)值是yes,不過有些情況下,你可能需要將下面的一行加入到文件中,即親自動手打開這個功能:
/etc/ssh/sshd_config:
# Change to yes to enable tunnelled clear text
passwordsPasswordAuthentication yes
如果作了改變,就需要重新啟動SSH:
/etc/init.d/ssh restart
分享:重力推薦--正則表達(dá)式在線檢測工具正則表達(dá)式(Regular Expression)在web開發(fā)中的應(yīng)用非常廣泛,很多時候使用它會給開發(fā)帶來極大的便利。 但是,正則表達(dá)式的編寫和使用是個比較復(fù)雜的過程。很多時候,即使將表達(dá)式寫出來了,也不能保證正確。 那么,有沒有便捷的檢測方法呢?有。本站推薦給
- PHPNOW安裝Memcached擴(kuò)展方法詳解
- php記錄頁面代碼執(zhí)行時間
- PHP中獎概率的抽獎算法程序代碼
- apache設(shè)置靜態(tài)文件緩存方法介紹
- php對圖像的各種處理函數(shù)代碼小結(jié)
- PHP 關(guān)于訪問控制的和運(yùn)算符優(yōu)先級介紹
- 關(guān)于PHP語言構(gòu)造器介紹
- php/js獲取客戶端mac地址的實(shí)現(xiàn)代碼
- php5.5新數(shù)組函數(shù)array_column使用
- PHP preg_match的匹配多國語言的技巧
- php 中序列化和json使用介紹
- php采集文章中的圖片獲取替換到本地
- 相關(guān)鏈接:
- 教程說明:
PHP教程-解析用SSH與PHP相連接 確保數(shù)據(jù)傳輸?shù)陌踩?3)
。