zoukankan      html  css  js  c++  java
  • goahead cgi 及出现的问题解决

    1. route.txt    配置cgi路径 

    route uri=/cgi-bin dir=/web handler=cgi 

     

    2.交叉编译生成cgi 

    goahead  源码路径下  ./test/cgitest.c  是c写 的cgi文件 

    arm-linux-gcc cgitest.c -o c.cgi 

     

    3.交叉编译后的cgi存放路径 

    /web/cgi-bin/c.cgi


    出现错误及解决方法: 

    版本:goahead v-3.1.2 

                       
    1.CGI process file is not executeable 
           出现这个问题只需要要将cgi的目标程序的执行权限变为可执行即可。 
     
    2. failed to spawn CGI task 
          出现这个问题的原因: 
     
         goahead在执行的过程中需要创建临时文件,默认的目录下不能创建,需要进行修改。 
         先在web目录下创建tmp文件夹,然后修改如下代码: 
         修改goahead/cgi.c中的函数websGetCgiCommName中的如下代码: 
     

    PUBLIC char *websGetCgiCommName() 
    { 
        return sclone(websTempFile("/web", "cgi")); 
    } 

    3 cgi   崩溃   

       osdep.c 

       PUBLIC char *websTempFile(char *dir, char *prefix) 
       { 

            修改return此句:少了dir   参数 

            return sfmt("%s/%s-%d.tmp",prefix, count++);


            修改后: 
            return sfmt("%s/%s-%d.tmp",dir, prefix, count++); 
       }


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

    参考文档:

    http://embedthis.com/products/goahead/doc/guide/goahead/users/index.html

  • 相关阅读:
    图的概念、存储、遍历、最短路径问题、最小生成树、拓扑排序、关键路径
    Nginx负载均衡
    Nginx反向代理
    Nginx配置虚拟主机
    Linux下Nginx安装
    freemarker使用
    ActiveMQ与spring整合
    ActiveMQ安装
    全局异常处理
    solr整合spring
  • 原文地址:https://www.cnblogs.com/riasky/p/3478412.html
Copyright © 2011-2022 走看看