欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

cgi+boa,cgi页面施行失败。提示cgi_header: unable to find lflf

更新时间: 2014-01-05 02:03:31 责任编辑: Author_N1

 

cgi+boa,cgi页面执行失败。提示cgi_header: unable to find LFLF
本帖最后由 nameofhsw 于 2012-08-21 15:07:44 编辑 web server使用的是boa。
目前,单独编译cgi程序没有错误。
但是如果在main函数中调用cgilib提供的函数,譬如init_cgi()等(实际上,就算是新写一个空函数调用也会出现这种情况,所以排除函数错误的原因),那么页面访问该cgi时,boa则提示cgi_header: unable to find LFLF。
打开boa的FASCIST_LOGGING调试信息,利用boa的调试信息:
fprintf(stderr, "\"%s\"\n", buf); //其中buf = req->header_line

得到的结果是语句仅仅显示一对“”,而没有任何内容。
正常应该显示cgi的main中所有printf的HTML报文,即“Content-type: text/html\n\n”等。

这个是cgilib库的原因吗?还是因为makefile没写好导致没有调用到cgilib??
或者是另外的原因?求高手指点
附上cgi的makefile文件内容:(其中libcgi-1.0为cgilib库)
CC=gcc

ifeq ($(SAMBA),1)
CFLAGS += -DLARGE_UPGRADE_BUF=1
endif
CFLAGS += -DPRODUCT_$(PRODUCT)
CFLAGS += -Wall -Ilibcgi-1.0/src/
LDFLAGS += -Llibcgi-1.0/src/ -lcgi

all: libcgi xml_action.o login.o protected.o 
$(CC)  xml_action.o -o xml_action.cgi $(LDFLAGS) 
$(CC)  login.o -o login.cgi $(LDFLAGS)
$(CC)  protected.o -o protected.cgi $(LDFLAGS)
libcgi:
cd libcgi-1.0; ./configure
make -C libcgi-1.0 CC="$(CC) -fPIC"

clean:
rm -f *.cgi *.o
make -C libcgi-1.0/ clean

--参考方法--
另外给login.c的main函数:
可以正常在boa的调试信息中看到语句:“Content-type: text/html”,即上面所说req->header_line的内容。
int main(void)
{
        printf("Content-type: text/html\n\n");
return -1;
}
boa调试信息显示“cgi_header: unable to find LFLF”,以及一个空的“”,即上面所说req->header_line的内容。
int main(void)
{
        printf("Content-type: text/html\n\n");
cgi_init();
return -1;
}
--参考方法--
搞定,关掉。
因为把libcgi.so文件添加到/usr/lib就好了
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 02:03:31
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/5141/
本文WWW.DOC100.NET DOC100.NET版权所有。