【发布时间】:2011-01-03 17:33:47
【问题描述】:
我在 Ubuntu 上有一个小的 apache2 CGI 应用程序。 CGI 处理程序是 bash shell 脚本。
我的客户端应用程序是 search.html:
<html>
<body>
<form action="/cgi-bin/search.sh" method="post">
<input type="text" name="searchKey" size="10"></input>
<input type=SUBMIT value="search">
<form>
</body>
</html>
首先,我只想在服务器端捕获“searchKey”参数的值。我尝试了以下操作,但没有显示任何内容。
search.sh 是:
#!/bin/bash
echo Content-type:text/plain
echo ""
echo $SEARCHKEY
伙计们,你能告诉我如何在服务器端捕获参数的值吗?
更新
感谢您的所有回答。我知道要获得发布请求的值需要从 STDIN 读取数据。
我按照 Ithcy 的建议尝试了以下操作
#!/bin/bash
echo post=$(</dev/stdin)
echo 'content length:'$CONTENT_LENGTH
echo 'content:'$post
它只显示:
content length:30
content:
为什么内容什么都不是?我是否需要在 Apache 服务器上进行更多配置才能读取帖子数据? 谢谢
【问题讨论】:
标签: bash web-applications shell apache2 cgi