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
goahead cgi 及出现的问题解决的更多相关文章
- nginx path_info问题解决
问题: 访问www.xxxx.com/index.php/api/xxxxxxxxx网址时,提示无法访问,找不到页面 解决: 第一次,是改了nginx.conf,不会报这个错误了,但还是没有用 loc ...
- ANSI是什么编码?
用Notepad++创建一个文本文件text.txt,其默认编码格式为ANSI(乍看之下,还以为是ASCII呢),输入汉字居然不是乱码: 保存为test.txt,发送给你美国的同事Bob.他也用Not ...
- PHP安装模式cgi、fastcgi、php_mod比较
先了解一下普通cgi的工作流程: web server收到用户请求,并把请求提交给cgi程序,cgi程序根据请求提交的参数作相应处理,然后输出标准的html语句返回给web server,web se ...
- jquery.pjax.js bug问题解决集锦
jquery.pjax 是一个很好的局部刷新插件,但实际应用过程是还是会有很多小问题,部分问题解决如下: 1.pjax 局部加载时候,IE 存在缓存问题,很容易理解,pjax是通过jquery的aja ...
- mac os利用xampp实现apache下的cgi
折腾了两天终于把问题解决了,mac os是10.10.3..够新了吧 系统原生的apache配置cgi老是配不好,突然发现xampp也有macos版的,准备下下来试试. 安装完成后,打开apache服 ...
- GoAhead 嵌入式web
https://embedthis.com/goahead/ 入手了一个360 4g wifi :使用jquery .goahead Goahead webserver编辑 GoAhead We ...
- 六大Nagios常见问题解决办法
Nagios常见问题1: It appears as though you do not have permission to view information for any of the host ...
- 嵌入式web server——Goahead移植要点
前言 在嵌入式设备中,在没有液晶显示的情况下,可以使用web来访问设备,查看设备的运行状态以及进行参数设置,类似于路由器设置.网上有很多关于各种web server的优劣的评论,在此不讨论,只是介绍其 ...
- goahead webserver源码分析
1.一个txt文本架构图 main() | |--websOpenServer() | |-- websOpenListen() | ...
随机推荐
- Android UiAutomator 自动化测试编译运行---新手2
1.首先打开eclipse创建java项目
- 关于 free() 函数用法的若干疑问
<C语言参考手册>中关于 free() 函数有如下描述. (1)free() 函数的原型 void free(void *ptr); (2)free 函数对以前由 malloc.callo ...
- 【分享】JS生成随机字符串
之前忘了从哪里找到的一段代码,整理电脑时,记录为博文备查,原创不是我. function randomString(len) { len = len || 32; var $chars = 'ABCD ...
- 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 ...
- JS实现信息的显示和隐藏
JS实现信息的显示和隐藏 我们在写注册页面的时候,必填信息是可见的,可选信息是隐藏的,如果用户希望填写,可以单击“详细信息”. 代码如下:<!DOCTYPE html><html&g ...
- Java开发岗位面试题
看到一些java面试题,准备慢慢自己做出来试试. 一.Java基础 1. String类为什么是final的. 只有当字符串是不可变的,字符串池才有可能实现.字符串池的实现可以在运行时节约很多heap ...
- Flex 自定义事件
一.分派自定义事件类型 任何实现flash.event.IEventDispatcher接口的对象都可以分派事件,这包括所有显示对象和一些非显示对象类.通常,对于 自定义的非显示类,可以通过扩展fla ...
- virtual 关键字
virtual 关键字用于修饰方法.属性.索引器或事件声明,并且允许在派生类中重写这些对象.例如,此方法可被任何继承它的类重写. public virtual double Area() { retu ...
- VC++6.0打开文件出错的解决办法
1.下载http://support.microsoft.com/kb/241396里面的一个叫FileTool.exe的文件并解压,解压后是一个vc工程,用vc6.0打开工程,编译,得到FileTo ...
- Apache JMeter开源压力测试/负载测试工具 2.12 官方最新版
软件介绍 Jmeter是一款使用Java开发的,开源免费的,测试工具, 主要用来做功能测试和性能测试(压力测试/负载测试),而且用Jmeter 来测试 Restful API, 非常好用. 如何学 ...