gpt4 book ai didi

php - 通过浏览器上的按钮向 Linux 服务器发送特殊代码

转载 作者:太空宇宙 更新时间:2023-11-04 03:40:49 25 4
gpt4 key购买 nike

我们目前正在通过HTTP协议(protocol)发送进入数据库的Linux命令,并且从Web服务器,命令通过telnet协议(protocol)(连接)发送到远程Linux服务器。对远程服务器的请求的响应显示在浏览器的输出窗口中。

我们已经完成了上述任务,但我们仍然希望有两个按钮:浏览器(gui)上的“中止”和“重新启动”,将请求发送到浏览器,然后发送到远程Linux服务器,并将响应显示在浏览器的输出窗口中。

目前,我们有以下代码片段:

<input type="button" name="Abort" onclick="send_cmd(this.form, true)" />
<input type="button" name="Reboot" onclick="send_cmd(this.form, true)" />



function send_cmd(frm, kCmd)
{
xmlhttp=new XMLHttpRequest();
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
console.log("remote:"+xmlhttp.responseText);
if(xmlhttp.responseText.indexOf("Permission denied") > -1) {
alert("Permission denied. Please ask administrator for next available time slots.");
}
}
}

if(kCmd){
cmd= ""; //empty for now
}
else{
cmd=frm.command.value;
}
xmlhttp.open("GET","cmd_request.php?q="+cmd,true);
xmlhttp.send();

setTimeout(function(){window.location.href="cmd.php"}, 1000);
}

如果有任何关于如何实现这项工作的想法,我们将不胜感激。提前致谢。

最佳答案

你可以在你的web服务上添加一个后台服务,这个服务可以执行你的linux命令,返回执行结果或者其他东西,比如:

<?php
$ret = exec("su -c /path/to/command -s /bin/bash -l otheruser", $out, $err);
var_dump($ret);
var_dump($out);
var_dump($err);
?>

文档:http://us3.php.net/manual/en/function.exec.php

关于php - 通过浏览器上的按钮向 Linux 服务器发送特殊代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29723427/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com