subprocess.popen使cgi脚本卡住了

时间:2015-01-06 23:49:24

标签: python apache subprocess cgi-bin

当使用以下代码打开页面时,页面将永远加载..

import cgitb
import subprocess,shlex
cgitb.enable()
print "Content-type:text/html\r\n\r\n"
print 'Hello'
CMD = '/usr/bin/python -u /path/to/file/filename.py -c %s -r'
cmd = CMD % 'somearg'
proc = subprocess.Popen(shlex.split(cmd),stdout=subprocess.PIPE)
output, status = proc.communicate()
print '<pre>%s</pre>' % output

仅在我取出subprocess.Popen()部分后才有效。 奇怪的是这段代码以前曾经工作过,而且我不记得最近做出任何可能与之相关的变化。 subprocess.Popen()部分也可以从python shell中完美运行,因此代码是正确的。我一直在寻找让页面永远加载的东西。我在网上搜索过解决方案,但找不到解决方案。寻找解决这个问题的建议。谢谢

1 个答案:

答案 0 :(得分:-1)

缺少CMD&#39; \ n&#39;。

CMD = '/usr/bin/python -u /path/to/file/filename.py -c %s -r\n'