我正在制作一款来自《Head First Python》的简单网络应用程序。我使用的是Ubuntu 14.04系统。但是出现了以下错误:
Traceback (most recent call last):
File "/usr/lib/python3.4/http/server.py", line 1143, in run_cgi
os.execve(scriptfile, args, env)
FileNotFoundError: [Errno 2] No such file or directory:
'/home/sarthak/Desktop/Learn/HeadFirstPython/chapter7/webapp/cgi-bin/generate_list.py'
127.0.0.1 - - [12/Jun/2015 07:08:25] CGI script exit status 0x7f00
该文件肯定存在于系统中,并且已经可以执行。
如何解决这个问题?
scriptfile
是否也是args
的第一个条目? - abarnertexec
来执行脚本;如果那是另一个Python脚本,你应该使用sys.executable
作为参数args[1]
来执行。前者在Linux上可能会工作,这取决于配置方式,但也可能不起作用(当它不起作用时,可能会给出与预期不同的错误)。而我不知道Ubuntu 14.04的默认配置是什么。或者你是否在chroot监狱中,等等。除非你需要确保它由其#!
处理器而不是Python运行,否则请直接execve
脚本。 - abarnert