tag 标签: goahead

相关博文
  • 热度 20
    2016-5-11 13:28
    4477 次阅读|
    0 个评论
    首先读者需要参考博客 http://bbs.ednchina.com/BLOG_ARTICLE_3029934.HTM 的内容将 GoAhead 在 SylixOS 下正常执行。 其次编译一个 SylixOS App 工程做 cgi 程序,这里使用的工程代码如下: #include stdio.h #include stdlib.h   int main(void) {     char *data;     long m,n;     printf("Content-type: text/html/n/n") ;     printf(" TITLE mult result /TITLE ");     printf(" H3 mult  result /H3 ");     data = getenv("QUERY_STRING");       if(data == NULL) {         printf(" P error! data is not input or data error!");     } else if(sscanf(data,"m=%ldn=%ld",m,n)!=2) {         printf(" P error!data must be a number!");     } else {         printf(" P %ld * %ld = %ld ",m,n,m*n);     }     return 0; } 注:以上代码在执行中还有问题,不过作为验证 CGI 的流程已经足够,剩下的需要研究 html 相关内容。 本工程编译成功后,在 apps/goahead 目录下的 web 目录中建立 cgi-bin 目录,将其拷贝过去,如下所示(是否有后缀名称 .cgi 都无所谓): # ls cgi_test        cgi_test.cgi 修改 route.txt 文件中对 cgi 的目录设置: route uri=/cgi-bin dir=/apps/goahead/web  handler=cgi 注: dir: 是 cgi-bin 文件夹的绝对路径的上级目录,需要根据自身内容进行更改。 修改 index.html 文件,修改后内容如下: !DOCTYPE html html lang="en" head titleHome Page/title /head   body     pCongratulations! The server is up and running.p/ /body FORM  ACTION="/cgi-bin/cgi_test"     INPUT NAME="m" SIZE="5"     INPUT NAME="n" SIZE="5"BR     INPUT TYPE="submit" VALUE="OK" /FORM /html 按照开始说明的博客内容,将文件部署到相应位置,既可以实现对 cgi 的调用。 调试中的问题 goahead: 0: Cannot find CGI program: ,修改 rout.txt 文件的 cgi dir 为绝对路径 /apps/goahead/web goahead: 0: CGI process file is not executeable: , chmod 777 ./cgi_test.cgi,
相关资源