从网页运行Shell脚本

时间:2020-01-09 10:43:31  来源:igfitidea点击:

问题描述:如何在Apache或者Lighttpd websever下的Web服务器或者网页上运行Shell脚本?

解决方法:为了从网页运行Shell脚本,您需要配置了cgi访问权限的Apache Web服务器。

Apache CGI允许将cgi-bin目录中的文档/文件作为应用程序处理,并在请求时由服务器运行,而不是发送给客户端的文档。
一个网页。
但是,您不能简单地从Web运行shell脚本。
您需要先发送或者打印MIME类型,然后再从Shell脚本将数据输出到Web浏览器。
您需要在脚本中添加以下行,然后才能将输出返回到浏览器:

echo "Content-type: text/html"
echo ""

这是可以显示今天的日期和与您的Shell脚本相关的其他信息的脚本:

#!/bin/bash
# get today's date
OUTPUT="$(date)"
# You must add following two lines before
# outputting data to the web browser from shell
# script
echo "Content-type: text/html"
echo ""
echo "<html><head><title>Demo</title></head><body>"
echo "Today is $OUTPUT <br>"
echo "Current directory is $(pwd) <br>"
echo "Shell Script name is ##代码##"
echo "</body></html>"

将脚本保存在cgi-bin目录中,然后从网页执行该脚本。