首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何通过登录到另一台服务器从php执行tcl脚本

如何通过登录到另一台服务器从php执行tcl脚本
EN

Stack Overflow用户
提问于 2013-07-12 20:00:43
回答 1查看 339关注 0票数 0

我正在做一个项目,从我的前端(用php编写)需要登录到一个服务器,并执行一个只能在该服务器上运行的tcl脚本。

因此,首先我想生成一个连接,然后在该已建立的连接中执行tcl。

我无法生成到服务器的连接。

我的php脚本是:

代码语言:javascript
运行
复制
<!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>

请帮帮我。提前谢谢。

EN

回答 1

Stack Overflow用户

发布于 2013-07-14 14:14:54

最简单的方法是在“运行远程命令”模式下使用ssh

代码语言:javascript
运行
复制
echo exec('ssh $remotehost /usr/bin/tclsh ./$args', $array);

这假设脚本已经上载到远程主机。如果不是,请首先使用scp (与ssh相同程序套件的一部分)。

然后,您需要配置运行该PHP脚本的帐户,使其能够ssh到远程主机,而无需输入密码。一种相当安全的方法是使用密钥设置ssh-agent,但我不知道如何使该方法与PHP一起作用。(在目标机器上关闭密码也是可行的,但是从安全的角度来看,这是非常可怕的!)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17614471

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档