下执行一个Python CGI脚本我有执行的Windows机器上细只需在控制台启动CGIHTTPServer,打开HTML页面中的数据传递给脚本和提交数据的蟒蛇CGI脚本。
我现在需要在Linux下这样做,但是这证明更加困难。一些网络搜索已经给这个脚本来启动服务器(我已经把8000年作为原始80没有工作)如何Linux的
import os
import BaseHTTPServer, CGIHTTPServer
serverAddr = ("", 8000)
os.chdir("/home/apannife/www")
serv = BaseHTTPServer.HTTPServer(\
serverAddr, CGIHTTPServer.CGIHTTPRequestHandler)
serv.serve_forever()
的HTML。
<HTML><HEAD><TITLE>
Test
</TITLE>
</HEAD>
<BODY>
<B> Filename </B>
<FORM METHOD=post ACTION="cgi-bin/docking_cgi.py" ENCTYPE="multipart/form-data">
<INPUT Type="file" NAME="upfile" SIZE=45><BR>
<P><INPUT TYPE=submit></FORM>
</BODY></HTML>
和cgi的第一部分。
#!/usr/bin/env python
import cgi
from cgi import FieldStorage
reshtml = '''Content-Type: text/html\n
<HTML><HEAD><TITLE>
DEMO
</TITLE></HEAD>
<BODY><H3> OUTPUT SENT TO %s %s </H3>
</BODY></HTML>'''
form = cgi.FieldStorage()
upfile = form['upfile']
但是在提交数据仅返回CGI脚本的文字,不运行它。我已经看到了一切,看起来服务器不能自动理解我希望它执行脚本。我该如何做到这一点? 谢谢。
尝试搭配chmod 755;在我的服务器上,目录上的group-write perm禁止执行。 – 2011-05-02 13:27:12
一个被设置为drwxr-XR-X这样应该能够工作 – Alan 2011-05-02 13:45:20