在同一网络上有两个覆盆子pis,如何在另一个上执行终端命令?

时间:2017-11-07 01:08:20

标签: php raspberry-pi apache2 raspbian

我在我的网络上设置了两个覆盆子pis。第一个pi [P1]正在托管一个apache2服务器,我在其上运行了一个基本的index.php网页。第二个pi [P2]正在运行mjpg-streamer服务。我可以在P1网页上查看流。我想要做的是在P1网页上有一个按钮,它在P2上执行一系列终端命令。意图是从P1开始在P2上停止和启动流服务。

我发现使用php我可以使用以下命令运行命令:

/ə/

但这会在P1上运行命令,如何在P2上运行命令?

我从以下http://php.net/manual/en/function.shell-exec.php

获得了上述示例

2 个答案:

答案 0 :(得分:0)

由于PHP是服务器端,它只能在服务器上执行(在本例中为P1)。如果您想从P1上托管的网页上执行P2上的命令,则必须使用客户端的某些内容,例如Java小程序。

另一种选择是创建一个API,以便单击该按钮对P2进行API调用,调用某个函数。

答案 1 :(得分:0)

您可以使用ssh和共享密钥在服务器上执行远程命令。它不是一个真正的PHP答案,但它仍然是一个答案。

https://www.digitalocean.com/community/tutorials/how-to-configure-ssh-key-based-authentication-on-a-linux-server

https://www.garron.me/en/go2linux/ssh-sudo-run-commands-remote-server.html