开发者

Sending stdout as response from CGI spawned program

I'm trying to compose a .zip file in a CGI program and send that as the content response. I'm getting stuck in that whenever I spawn a program that prints to stdout, that somehow doesn't get accepted by Apache. It seems to be something to do with spawning a program that writes to stdout. The snippet below reproduces this problem. I always get the following error form Apache:

malformed header from script. Bad header=hello world  

print ("Content-Type: text/html");  
print ("");  
#print ("hello world");     <-----This works  
os.system("echo hello world");  <-----This doesn't work

It works fine if I just print the string from my CGI script. If I run it with either statement from the command line, there's no difference in behaviour. Is there something special I need to do to get the stdout from a spawned program out 开发者_如何学Cas my respone?


Try sys.stdout.flush() before calling external programs.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜