我在AWS上运行的Linux服务器实例上的文件中有一个bash和perl脚本。我正在尝试将一个 Web 应用程序放在同一台服务器上,该服务器将作为 GUI 运行该脚本。(即在网页上放置一个按钮,单击该按钮时,将运行位于同一服务器上但在 bin 目录中的脚本)
谢谢
使用您选择的语言设置网络服务器后,请为您选择的请求创建一个处理程序。一旦完成,谷歌exec <language>
,其中<语言>是你编写它的语言。以下是一些流行语言的参考:语言>
- 去
- Javascript (node.js)
- .PHP
- 蟒
- 红宝石
步骤 1:安装 HTTP 服务器
第 2 步:将服务器配置为将某个目录中的某些文件作为 CGI 脚本处理。
第 3 步:向页面添加POST
CGI 脚本的<form>
。包括submit
按钮。这不是一个真正的网络应用程序,在服务器上运行脚本是古老的。查看 90 年代网页的留言簿和反图像。
脚本本身看起来像(在Perl中):
#!/usr/bin/perl
use CGI;
# the following line is *strongly* recommended
use strict; use warnings; use CGI::Carp qw(fatalsToBrowser);
my $cgi = CGI->new();
print $cgi->header();
exec "/usr/bin/script-I-want-to-run", "--switch", "value";
在 Bash 中,这可能会起作用:
#!/bin/sh
echo "Content-type: text/plain"
echo ""
/usr/bin/script-or-whatever --switch value
Perl 的 CGI 模块甚至会帮助你获得$cgi->param
的东西,绝对推荐。当你问谷歌时,你会发现很多关于Perl CGI脚本的教程(大多是糟糕的)。无论如何都要阅读它们。
我不确定您的服务器是如何设置的,并且 apache 用户可能没有运行某些命令的正确权限,但像大多数编程语言(如 php)一样,有一个用于运行外部命令的命令。
结帐 - http://php.net/manual/en/function.exec.php