Firefox中的python cgi问题

时间:2011-01-16 18:48:24

标签: python firefox forms cgi

我写了一个html表单,并试图将python cgi脚本加入其中。我已经配置了我的apache服务器来执行cgi-bin目录中的cgi脚本。这是html表单:

<html>
<body>
<form name="input" action="c:/xampp/cgi-bin/test2.py" method="post">
    <input type="text" name="qry" /> 
    <input type="submit" value="GO!" />
</form> 
</body>
</html>

这是test2.py cgi脚本:

#!c:/Python27/python.exe -u
import cgi
import cgitb
cgitb.enable()
form = cgi.FieldStorage()
qry = form["qry"].value
print "Content-Type: text/html"
print


print "<html"
print "<body>"
print qry
print "</body>"
print "</html>"

html页面位于我的htdocs文件夹中,cgi脚本位于cgi-bin目录中。但是,当我在表单中输入内容并提交时,firefox会返回一条错误消息:“Firefox不知道如何打开此地址,因为协议(c)与任何程序无关”。为什么会出现此错误?它与我的html页面中的cgi脚本路径有什么关系吗?提前谢谢!

1 个答案:

答案 0 :(得分:1)

你是对的:它与HTML页面上CGI脚本的路径有关。表单的action属性应该指代在服务器上解释CGI脚本的路径,例如/cgi-bin/test2.py

由于你犯了这个错误,我假设你是网络开发的新手。考虑使用mod_wsgi和像Django这样的框架而不是CGI,特别是如果你期望大量的流量,或者你正在制作一个Web应用程序,而不仅仅是处理单个表单。