我有一台由 Blueshot 托管的服务器。我一直在使用 php 从 iPhone 获取 post 变量...但现在我必须使用 python 从 iPhone 获取 post 变量。我写了这样的东西
import cgi
import cgitb; cgitb.enable() # for troubleshooting
print "Content-type: text/html"
print
print """
<html>
<head><title>Sample CGI Script</title></head>
<body>
<h3> Sample CGI Script </h3>
"""
form = cgi.FieldStorage()
message = form.getvalue("message", "(no message)")
print """
<p>Previous message: %s</p>
<p>form
<form method="post" action="index.cgi">
<p>message: <input type="text" name="message"/></p>
</form>
</body>
</html>
""" % message
并上传到我的服务器但它不起作用...如果我导航到该页面然后它只显示源代码..我不知道我的服务器上是否安装了 python(我相信 python可能会默认安装)。如何检查 python 是否可以在我的服务器上运行,如果不能,我如何在我的服务器上运行 python 脚本?我想要做的就是从 iPhone 获取 POST 变量(我知道如何从 iPhone 发送变量)提前致谢...
最佳答案
以下是 CGI 脚本不工作时需要检查的小 list :
- 它是否在
cgi-bin
(或等效的)文件夹中? - 是否可执行?
- 是否可读?
- 它有 hashbang 吗?
- 您的服务器是否设置为处理 CGI 脚本?
这是一个可用于测试的示例 CGI 脚本:
#!/usr/bin/env python
import cgi; cgi.test()
将其命名为test.py
,将其放在cgi-bin
中的某处,并确保它是可执行的:
$ chmod a+rx test.py
一些网络服务器只识别带有特定扩展名的 CGI 脚本,所以如果 .py
不起作用,您可能想尝试 .cgi
。
关于python - 如何在我的服务器上运行 python 脚本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5645384/