日期:2014-05-16  浏览次数:20676 次

请教cgi程序不能使用popen的问题
web服务器是apache,cgi程序用c语言写的。
代码:fstream=popen("ps -al","r"),通过网页来调用cgi程序执行popen成功,但是不能获得ps命令返回的字符串内容,手动执行程序又可以。而且还有一种情况:手动kill掉httpd进程,然后重启httpd进程,再通过web调用cgi程序中的popen又可以获得ps命令返回的字符串了,不知道是什么原因导致的,求教大牛。

------解决方案--------------------
现象很诡异
popen 返回的指针是不是空,如果是perror("error")查看错误信息
fread(fstream,buf,size) 能不能读?能读多少字节?perror打出错误信息?