goahead执行cgi常见问题及解决

在将goahead成功移植到android上,静态网页执行没有问题,但是在执行cgi的时候会出现如下错误:
1. CGI process file is not executeable
出现这个问题只需要要将cgi的目标程序的执行权限变为可执行即可。

2. failed to spawn CGI task
出现这个问题的原因:

goahead在执行的过程中需要创建临时文件,默认的目录下不能创建,需要进行修改。
先在webroot的cgi-bin目录下创建tmp文件夹,然后修改如下代码:
修改goahead/cgi.c中的函数websGetCgiCommName中的如下代码(这个文件里面有很多同名的函数,只修改linux中的这个函数),:

pname1 = tempnam(NULL, T(cgi));

修改为:

pname1 = tempnam(/data/local/webroot/cgi-bin/tmp, T(cgi));

修改完毕需要重新编译goahead的源码。


你可能感兴趣的:(head)