Php 运行bash脚本以响应httppost

Php 运行bash脚本以响应httppost,php,bash,Php,Bash,我一直在使用以下PHP脚本在服务器上触发bash脚本: <?php $output = shell_exec('cat update.sh | ssh -l some_user -i key foo.bar.com'); echo "<pre>$output</pre>"; ?> 由于我无法控制的问题,我们更改了服务器,我无法运行PHP(不问)。有没有其他语言可以用来完成这项任务?很明显,我可以通过HTTP POST来实现这一目标。谢谢。您可以直接使用c

我一直在使用以下PHP脚本在服务器上触发bash脚本:

<?php
$output = shell_exec('cat update.sh | ssh -l some_user -i key foo.bar.com');
echo "<pre>$output</pre>";
?>


由于我无法控制的问题,我们更改了服务器,我无法运行PHP(不问)。有没有其他语言可以用来完成这项任务?很明显,我可以通过HTTP POST来实现这一目标。谢谢。

您可以直接使用cgi运行bash脚本

#!/usr/bin/env perl

++$|;
print '<pre>';
system ('your command 2>&1');
print '</pre>';
#/bin/bash
OUTPUT=`cat update.sh | ssh-l some_user-i key foo.bar.com`
#之前必须添加以下两行
#从shell向web浏览器输出数据
#剧本
echo“内容类型:文本/html”
回声“”
回声“演示”
回显“$OUTPUT
” 回声“”

您可以使用cgi直接运行bash脚本

#!/usr/bin/env perl

++$|;
print '<pre>';
system ('your command 2>&1');
print '</pre>';
#/bin/bash
OUTPUT=`cat update.sh | ssh-l some_user-i key foo.bar.com`
#之前必须添加以下两行
#从shell向web浏览器输出数据
#剧本
echo“内容类型:文本/html”
回声“”
回声“演示”
回显“$OUTPUT
” 回声“”

一些来自

的代码取决于服务器配置。这项任务非常简单,所以您可以使用提供商提供的所有(我猜)技术来完成;)

如果您可以访问perl:

#!/bin/bash
x=`cat update.sh | ssh -l some_user -i key foo.bar.com`
echo <<EOL
Content-type: text/html

<pre>$x</pre>
EOL
#/usr/bin/env perl
++$|;
打印“”;
系统(“您的命令2>&1”);
打印“”;

Python和许多其他的类似。

它取决于服务器配置。这项任务非常简单,所以您可以使用提供商提供的所有(我猜)技术来完成;)

如果您可以访问perl:

#!/bin/bash
x=`cat update.sh | ssh -l some_user -i key foo.bar.com`
echo <<EOL
Content-type: text/html

<pre>$x</pre>
EOL
#/usr/bin/env perl
++$|;
打印“”;
系统(“您的命令2>&1”);
打印“”;

Python和许多其他语言都很相似。

您可以使用老式的cgi bin直接运行bash脚本:

#/bin/bash
x=`cat update.sh | ssh-l some_user-i key foo.bar.com`

echo您可以使用老式的cgi bin直接运行bash脚本:

#/bin/bash
x=`cat update.sh | ssh-l some_user-i key foo.bar.com`

是的,我可以运行shell脚本。唯一的问题是安装PHP;但是,在上面的代码中,您没有处理POST数据,您真的需要吗?@gonzoc0ding您是否仅通过在web浏览器中或通过cron或手动访问脚本来触发脚本?您可以将该命令复制到bash脚本中,然后像
/stuff那样运行脚本。sh
bash可用于通过CGI响应请求-BIN@drew010这是对Github POST钩子的响应,所以这是必要的。是的,我可以运行shell脚本。唯一的问题是安装PHP;但是,在上面的代码中,您没有处理POST数据,您真的需要吗?@gonzoc0ding您是否仅通过在web浏览器中或通过cron或手动访问脚本来触发脚本?您可以将该命令复制到bash脚本中,然后像
/stuff那样运行脚本。sh
bash可用于通过CGI响应请求-BIN@drew010它是对Github POST钩子的响应,因此它是必要的。