CGI和BOA使用期间遇到的问题汇总(转)
若还有错误代码,本人解决后会陆续补充。C/S下的错误汇总也会不久上传。
1.必须要在板子的/etc下建一个boa目录(错误代码忘了)
2.”can't open boa.conf for reading“
解决:不仅要在你自己放置boa的目录下放入boa.conf配置文件,而且要在板子的/etc/boa下也要放入boa.conf文件,这样系统在运行boa的时候才可以读取到boa.conf文件。
3.“unable to dup2 the error log bad file descriptor”
解决:在boa源码里,即src文件夹下把log.c中的第73行的if语句注释掉。
4."unable to dup2 the error log:Bad file descriptor"
解决:在boa.conf里,把“#AccessLog /var/log/boa/access_log”注释掉(即去掉#号)。
5.“[01/Jan/2031:00:12:25 +0000] boa.c:226 - icky Linux kernel bug!: No such file or directory”
解决:在boa源码里,即src文件夹下把boa.c中的第226行的if语句注释掉。
6."gethostbyname:: Resource temporarily unavailable"
解决:把“#ServerName www.your.org.here”的“#”号去掉。
7."./boa: 1: syntax error: "(" unexpected"
解决:没有修改Makefile,是用gcc编译的,应该改成是arm-linux-gcc编译。
8.如果页面上是:“502 Bad Gateway The CGI was not CGI/1.1 compliant.“
解决:给你要执行的cgi可执行程序赋个权限。chmod 777 filename
9.在<form action="cgi-bin/test2.cgi" method="get">中,cgi可执行程序的路径就直接写“cgi-bin/test2.cgi”就可以了,不要写板子上的绝对路径,这样就重复了,因为cgi执行时会自动去boa.conf的指定的路径里找。
10.出现警告:“control reaches end of non-void function”,是因为某个函数没有return,而函数定义时是非void型的。所以需要有个返回值。比如int cgiMain()这个函数就一定要有个返回值的,否则会报这个错误。
12.运行网页时老出现错误:“mkstemp:No such file or diectory”
解决:不能用post,只能用get。因为post方式需要新建一个临时文件,这就需要用到mkstemp函数。这个函数是在系统中以唯一的文件名创建一个文件并打开,且只有当前用户才能访问这个临时文件。故权限不够,或其他什么问题都会报这个错误。那么就用get吧!这里具体原因细节笔者暂时也不是很清楚...
13.直接写的含有system()函数的c程序用arm-linux-gcc编译到板子上的可以执行,而如果写在cgi中的就不一定能执行了。因为牵涉到一个cgi的权限的问题。即使给你的cgi-bin文件夹下的所有cgi可执行文件都赋了权限,也不一定能执行。
解决办法就是看看你的boa.conf中的权限设置的如何。这里正确的应该是把“User nobody Group nogroup”改为“User root Group 0”,否则不能正确执行!你会发现你的cgi可执行程序的其他代码都执行了,却只有这个system()函数没有执行!
转载于:https://www.cnblogs.com/hnrainll/archive/2011/06/01/2067295.html
CGI和BOA使用期间遇到的问题汇总(转)相关推荐
- CGI,BOA配置心得
今天下午在开发板上搭建了,一个BOA服务器.进行了相关的配置. 访问网页没有问题. 但是在和CGI交互上面出现了问题. 填写表单,提交后出现: 502 Bad Gateway The ...
- linux下CGIC/CGI和BOA开发小记
新入职的公司需要我在公司的板卡上开发一个CGI网页用于配置系统参数,减少了客户直接配置内核文件的复杂过程, 主要功能要包括: 1.CGI登录(只有密码校验), 2.配置文件传输(CGI文件传输) 3. ...
- 使用npm init @vitejs/app 搭建vue3期间遇到的问题汇总整理
最近看到用vite2能大幅缩短打包时间以及项目启动时间,就自己试了一下用vite2搭建项目,下面是我遇到的问题集合 1.若是npm下载某个配置有问题,参照下面配置,可以试试 npm config ed ...
- 嵌入式http服务器boa 简介
目录 概述 BOA简介 在linux中查看进程 - 根据进程PID号终止进程 BOA移植过程 在Linux(pc端)上进行移植 1.下载boa源码 2.解压文件,并进入./boa-0.94.13/sr ...
- 物联网之boa服务器
一.移植boa服务器 源码下载:boa-0.94.13.tar.gz 链接:https://pan.baidu.com/s/13pSIqRU47xkjInVfFDMorQ 密码:m7eg 解压源码:t ...
- 安防监控实现之CGI的移植及与html的通信
文章目录 声明 概述 框图 源码分析 用户操作流程分析 CGIC的移植过程 源码移植 问题与解决思路 进一步项目移植 移植步骤 问题与解决思路 项目移植(完整版) 声明 华清远见教育集团 15年专注高 ...
- 【实战】物联网安防监控项目【2】———boa服务器的移植
一.boa服务器的移植 1.源码下载 1.1 boa简介: 其可执行代码只有大约60KB左右,Boa是一个单任务的HTTP服务器,Boa只能依次完成用户的请求,而不会fork出新的进程来处理并发连接请 ...
- 【实战】物联网安防监控项目【3】———CGI的移植及与学习html制作网页
一.CGI的移植 CGIC移植部分笔记: CGIC是一个支持CGI开发的开放源码的标准C库,可以免费使用,只需要在开发的站点和程序文档中有个公开声明即可,表明程序使用了CGIC库,用户也可以购买商业授 ...
- linux 远程挂载摄像头_基于Linux的嵌入式网络摄像机设计
本嵌入式网络摄像机采用高性能ARM9芯片微处理器,内置嵌入式Web服务器. 通过嵌入式多任务操作系统采集摄像机视频数据:采集的视频信号数字化后经MJPEG算法压缩,再通过内部总线送到内置的Web服务器 ...
- 基于ARM开发板搭建物联网服务器
基于ARM开发板搭建物联网服务器 一.项目需求 1.1设备需求 1.2知识需求 1.3项目介绍 二.开发环境搭建 2.1阿里云服务器配置 2.2虚拟机交叉编译环境搭建 2.3下载相关应用压缩文件 三. ...
最新文章
- linux下IPTABLES配置详解
- 同步电路设计的一些问题(时序分析基础,同步电路设计规则)
- [csu/coj 1078]多个序列的最长公共子序列
- Web 前沿——HTML5 Form Data 对象的使用
- 关闭裁剪功能_4个图片裁剪技巧,瞬间看出Word大神与小白的差距!
- VTK修炼之道52:图形基本操作进阶_多分辨率策略(模型抽取的三种方法)
- 二十八、接了一单Python北京空气质量数据处理
- oracle的监听器是什么,Oracle监听器,让你监听想要的东东
- Lintcode--1(463)--整数排序
- pytorch学习笔记(三):线性回归
- Ajax请求中的Redirect()
- 最新emoji表情代码大全_8张最新创意好看的早上好表情图片大全 秋日温馨的早安祝福图片带字精选...
- 实验室管理系统LIMS的作用和意义
- 无缘晶振匹配电容计算方法
- 小米的服务器地址怎么修改,小米无线路由器IP地址怎么修改
- 疯狂springboot终极讲义笔记(一)
- 服务器创建文件失败是什么意思,网站提示无法创建文件错误解决详情(图文)...
- CSAPP:BombLab
- 几何线条科技感员工转正述职报告PPT模板-优页文档
- Python写简单的拼图小游戏
热门文章
- python中popen返回值_python中os.system()和os.popen()的返回值
- bootstracp实现树形列表_用 Python 实现一个网页下载工具
- html js 跳出框架,现在的web框架为什么把html和js又结合在一起了?
- 下拉树取值与赋值单元格填报(取值赋值)
- php图像生成和处理,PHP的gd库(图像生成和处理)的应用
- el-select传递多个参数_python函数是如何进行参数传递的
- python 多分类 recall_sklearn多分类问题
- 你的项目应该如何分层?
- 你还在生产环境改代码么?函数计算版本管理(三)使用别名进行灰度发布...
- 【翻译】CodeMix使用教程(四):调试