[英]How to execute a tcl script from php via logging into another server
我正在一個項目中,從我的前端(用php編寫)需要登錄到服務器並執行只能在該服務器上運行的tcl腳本。
因此,首先我想先生成一個連接,然后在該已建立的連接中執行tcl。
我無法生成與服務器的連接。
我的PHP腳本是:
<!DOCTYPE html>
<html>
<body>
<?php
function print_procedure ($arg) {
$array = array();
echo exec('/usr/bin/tclsh ./$args',$array);
for($i=0;$i<count($array);$i++)
{
echo "<br>";
print_r($array[$i]);
echo "<br>";
}
$script_name='test.tcl';
}
print_procedure($script_name);
?>
</body>
</html>
請幫幫我。 提前致謝。
最簡單的方法是在“運行遠程命令”模式下使用ssh
。
echo exec('ssh $remotehost /usr/bin/tclsh ./$args', $array);
這假定腳本已被上載到遠程主機。 如果不是,請首先使用scp
(與ssh
相同的程序集的一部分)。
然后,您需要配置運行該PHP腳本的帳戶,以便能夠在不輸入密碼的情況下SSH到遠程主機。 一種合理的安全方法是使用密鑰設置ssh-agent
,但我不知道使此方法與PHP一起使用的詳細信息。 (在目標計算機上關閉密碼也可以,但是在安全性方面令人恐懼 !)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.