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

goahead cgi 及出现的问题解决的更多相关文章

  1. nginx path_info问题解决

    问题: 访问www.xxxx.com/index.php/api/xxxxxxxxx网址时,提示无法访问,找不到页面 解决: 第一次,是改了nginx.conf,不会报这个错误了,但还是没有用 loc ...

  2. ANSI是什么编码?

    用Notepad++创建一个文本文件text.txt,其默认编码格式为ANSI(乍看之下,还以为是ASCII呢),输入汉字居然不是乱码: 保存为test.txt,发送给你美国的同事Bob.他也用Not ...

  3. PHP安装模式cgi、fastcgi、php_mod比较

    先了解一下普通cgi的工作流程: web server收到用户请求,并把请求提交给cgi程序,cgi程序根据请求提交的参数作相应处理,然后输出标准的html语句返回给web server,web se ...

  4. jquery.pjax.js bug问题解决集锦

    jquery.pjax 是一个很好的局部刷新插件,但实际应用过程是还是会有很多小问题,部分问题解决如下: 1.pjax 局部加载时候,IE 存在缓存问题,很容易理解,pjax是通过jquery的aja ...

  5. mac os利用xampp实现apache下的cgi

    折腾了两天终于把问题解决了,mac os是10.10.3..够新了吧 系统原生的apache配置cgi老是配不好,突然发现xampp也有macos版的,准备下下来试试. 安装完成后,打开apache服 ...

  6. GoAhead 嵌入式web

    https://embedthis.com/goahead/ 入手了一个360  4g  wifi :使用jquery  .goahead Goahead webserver编辑 GoAhead We ...

  7. 六大Nagios常见问题解决办法

    Nagios常见问题1: It appears as though you do not have permission to view information for any of the host ...

  8. 嵌入式web server——Goahead移植要点

    前言 在嵌入式设备中,在没有液晶显示的情况下,可以使用web来访问设备,查看设备的运行状态以及进行参数设置,类似于路由器设置.网上有很多关于各种web server的优劣的评论,在此不讨论,只是介绍其 ...

  9. goahead webserver源码分析

    1.一个txt文本架构图 main() | |--websOpenServer() |             |-- websOpenListen() |                       ...

随机推荐

  1. Android UiAutomator 自动化测试编译运行---新手2

    1.首先打开eclipse创建java项目

  2. 关于 free() 函数用法的若干疑问

    <C语言参考手册>中关于 free() 函数有如下描述. (1)free() 函数的原型 void free(void *ptr); (2)free 函数对以前由 malloc.callo ...

  3. 【分享】JS生成随机字符串

    之前忘了从哪里找到的一段代码,整理电脑时,记录为博文备查,原创不是我. function randomString(len) { len = len || 32; var $chars = 'ABCD ...

  4. nexus REST API /artifact/maven/[resolve|redirect] returns unexpected for v=LATEST

    Novice nexus oss (2.0.0) user here – getting unexpected results when requesting v=LATEST artifact fr ...

  5. JS实现信息的显示和隐藏

    JS实现信息的显示和隐藏 我们在写注册页面的时候,必填信息是可见的,可选信息是隐藏的,如果用户希望填写,可以单击“详细信息”. 代码如下:<!DOCTYPE html><html&g ...

  6. Java开发岗位面试题

    看到一些java面试题,准备慢慢自己做出来试试. 一.Java基础 1. String类为什么是final的. 只有当字符串是不可变的,字符串池才有可能实现.字符串池的实现可以在运行时节约很多heap ...

  7. Flex 自定义事件

    一.分派自定义事件类型 任何实现flash.event.IEventDispatcher接口的对象都可以分派事件,这包括所有显示对象和一些非显示对象类.通常,对于 自定义的非显示类,可以通过扩展fla ...

  8. virtual 关键字

    virtual 关键字用于修饰方法.属性.索引器或事件声明,并且允许在派生类中重写这些对象.例如,此方法可被任何继承它的类重写. public virtual double Area() { retu ...

  9. VC++6.0打开文件出错的解决办法

    1.下载http://support.microsoft.com/kb/241396里面的一个叫FileTool.exe的文件并解压,解压后是一个vc工程,用vc6.0打开工程,编译,得到FileTo ...

  10. Apache JMeter开源压力测试/负载测试工具 2.12 官方最新版

    软件介绍   Jmeter是一款使用Java开发的,开源免费的,测试工具, 主要用来做功能测试和性能测试(压力测试/负载测试),而且用Jmeter 来测试 Restful API, 非常好用. 如何学 ...