boa常见错误整理

2023-05-16

错误1:
bison -y -d boa_grammar.y
gcc -g -O2 -pipe -Wall -I.    -c-o y.tab.o y.tab.c
y.tab.c: In function ‘yyparse’:
y.tab.c:1295: warning: implicit declaration of function‘yylex’
lex boa_lexer.l
make: lex: Command not found
make: *** [lex.yy.c] Error 127
解决办法:由于没有flex,出现了缺少lex.yy.c文件的报错。只要安装上flex即可。
$ sudo apt-get install flex

错误2:
request.c: In function ‘get_request’:
request.c:84: warning: pointer targets in passing argument 3 of‘accept’ differ in signedness
gcc -g -O2 -pipe -Wall -I.    -c-o response.o response.c
gcc -g -O2 -pipe -Wall -I.    -c-o select.o select.c
gcc -g -O2 -pipe -Wall -I.    -c-o signals.o signals.c
gcc -g -O2 -pipe -Wall -I.    -c-o util.o util.c
util.c:100:1: error: pasting "t" and "->" does notgive a valid preprocessing token
make: *** [util.o] Error 1
解决办法:根据提示修改源码中的src/compat.h文件。
修改:#define TIMEZONE_OFFSET(foo)foo##->tm_gmtoff
为:#define TIMEZONE_OFFSET(foo) foo->tm_gmtoff
 
错误3: log.c:73 unable to dup2 the error log:bad filedescriptor
修改 src/log.c
找到:if (dup2(error_log, STDERR_FILENO) == -1)
{ DIE("unable to dup2 the error log");}
修改为:
 
错误4:Could not open boa.conf for reading这个是因为根目录定义好了后,启动boa就要去这个根目录下读取boa.confmime.types,因此根目录下必须有这两个文件。
 
错误5:boa.c:226 - icky Linux kernel bug!: Success这是从log/boa/error_log中读到的。在cgi中使用root权限时出现。
注意:配置文件中要给ROOT权限,注释以下代码是允许ROOT权限访问BOA。
注释掉下面语句:
  if (setuid(0) != -1)
  { DIE(”icky Linux kernel bug!”); }
  打开正确后,error_log将显示boa: server versionBoa/0.94.13 [20/Sep/2010:08:26:24 +0000] boa: server built Sep 202010 at 16:20:39. [20/Sep/2010:08:26:24 +0000] boa: starting serverpid=28683, port 80 同时一定要注意权限问题,配置里的用户一定要和实际一致
在那些文件拷贝过程中,要注意拷贝到/bin,/var/www/cgi-bin下后,文件权限需要做修改,用sudo chmod 755文件名,这时才可用。

错误6:打开网页时,网页中的图片无法显示
将存放图片的子目录修改成/var/www/img即可 或者修改boa中图片解析的路径
 
错误7:在测试cgi脚本时,浏览输出下述错误:
502 Bad Gateway
The CGI was not CGI/1.1 compliant
解决方法:注意CGI程序符合HTML文件格式,结尾处'\n'等细节问题,这类错误不好调试。
 
错误8:boa.c:211 - getpwuid: No such file or directory
修改src/boa.c
找到:if (passwdbuf == NULL) { DIE(”getpwuid”);}
if (initGroups(passwdbuf->pw_name,passwdbuf->pw_gid) == -1)
{ DIE(”initgroups”);}
修改为:
#if 0
if (passwdbuf == NULL) { DIE(”getpwuid”);}
if (initgroups(passwdbuf->pw_name,passwdbuf->pw_gid) == -1)
{ DIE(”initgroups”);}
#endif
 
错误9:当运行./boa时出现Cannot open /var/log/boa/access_log forlogging: logfile open: No such file or director的提示。
出现这个提示是因为,在/var/log文件夹下没有boa文件夹,所以在该目录下建立一个boa就ok。建立方法: mkdir/var/log/boa。
(路径根据boa.conf路径填)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

boa常见错误整理 的相关文章

  • 在编译PX4之前,你需要知道的几件事

    1 在git上clone代码 xff0c 必须是clone xff0c 因为编译时需要有 git文件夹 如果你看Makefile就会发现有这么一行 xff1a Enforce the presence of the GIT reposito
  • 马氏距离与卡方分布

    最近在看 Fundamentals of object tracking xff0c 看到最近邻滤波时 xff0c 碰到了题中的两个概念 以下内容基本来自wiki xff0c 读者有不懂的地方看wiki更清晰明了 1 马氏距离 Mahala
  • PX4中的mavlink

    简介 px4与地面站的通信协议是mavlink xff0c 对于其消息格式的介绍看这里和这里 需要注意几点 xff1a 不光是px4与qgroundcontrol通信通过mavlink xff0c 有一些sensor也支持mavlink m
  • STM32F1Debug,定时器时基初始化参数

    STM32F1 xff0c 定时器时基初始化参数 错误代码 xff1a 在初始化时基时 xff0c 没有给TIM ClockDivision和TIM RepetitionCounter赋值 错误代码 xff1a span class tok
  • dockerfile详解

    前言 各位想必应该记得 xff0c 我们此前如果安装一个nginx的话 xff0c 安装完以后 xff0c 我们说过很多次了 xff0c 通常不会运行在默认配置下 xff0c 那因此 xff0c 我们通常需要去改一改它的配置文件或者定义模块
  • docker hub + github action x持续集成CI/CD

    docker 43 github 持续集成CI CD docker 持续集成 参考官网 xff1a https docs docker com ci cd best practices 的大部分内容 2020 Jetbrains devel
  • 利用爬虫获取免费IP代理

    项目目标 通过爬虫获取 西拉代理 xff08 http www xiladaili com xff09 上的高匿代理 xff0c 并储存至一个列表 项目分析 首先对网页进行观察 xff0c 主体内容如下图所示 不但指明了代理IP 协议类型
  • DOCKER windows 7 详细安装教程

    Edit DOCKER windows安装 编者 xff1a xiaym 日期 xff1a 2015年1月20日 排版工具 xff1a 马克飞象 QQ 252536711 DOCKER windows安装 1 下载程序包2 设置环境变量3
  • 职场里不能与之结为团队的十种人

    俗话说 xff1a 女怕嫁错郎 xff0c 男怕入错行 同样 xff0c 一个人进入职场最怕的就是遇上了自己无法与其默契的某些团队成员 xff0c 这会影响到自己的事业进取 xff0c 影响到自己努力奋斗的成果收获 xff0c 影响到自己做
  • python读取大疆P1相机POS

    大疆P1相机读取POS xff0c 算法不是很好 xff0c 但是可以用 未来有好的算法再贡献 import os import os path import exifread workspace 61 r 39 G 20210727 39
  • Java数据结构之Lambda表达式

    目录 1 背景1 1 Lambda表达式的语法1 2 函数式接口 2 Lambda表达式的基本使用3 变量捕获3 1 匿名内部类的变量捕获3 2 Lambda的变量捕获 4 Lambda在集合当中的使用4 1 Collection接口4 2
  • docker学习笔记

    一 docker简介 xff1a 1 是什么 xff1a xff08 1 xff09 为什么会有docker出现 xff0c 将解决什么样的问题 xff1a 当我们在开发一个项目的时候 xff0c 假如您自己的电脑有您自己的开发环境 xff
  • iserver配置https加密通信

    1 升级iserver为https访问 xff1a iserver是部署在tomcat中 xff0c 所以只要配置tomcat的相关配置就可以 xff1a xff08 1 xff09 https访问需要用到证书 xff0c 因此需要准备相关
  • ZeroMQ发布订阅模式之多进程实现

    ZeroMQ的发布订阅模式是单向的数据发布 xff0c 服务器 xff08 即消息发布方 xff09 将更新的消息 事件推送到一组客户端 xff08 即订阅方 xff09 消息发布者创建ZMQ PUB类型的socket并将消息发送到消息队列
  • java面试清单和书籍推荐 五颗星五颗星

    前言 面试必备技能清单 xff0c 这里不会详细论述 xff0c 更多的是清单列举 xff0c 罗列一些关键字和链接注释 数据结构与算法 排序算法 选择排序冒泡排序插入排序快速排序快速排序 xff08 普通 xff0c 二路 xff0c 三
  • ssh Key exchange was not finished sshd

    报错 xff1a ssh Key exchange was not finished 则需修改sshd文件 链接 xff1a Key exchange was not finished connection is closed近期遇到这个错
  • C++类成员冒号初始化以及构造函数内赋值

    通常我们对类成员进行 初始化 有两种方式 xff1a 1 构造函数后面跟冒号 xff1b 2 构造函数里面对成员进行赋值 有些人不太注意这个小细节 xff0c 或者根本不知道他们的区别 xff0c 认为两种方式是一样的 这个误解有时可能会对
  • Web项目中pom.xml中<Project>爆红

    artifactId 39 with value 39 项目名 39 does not match a valid id pattern 主要是项目名中 lt artifactId gt 项目名 lt artifactId gt 项目名带空
  • 《自动化学报》踩坑心得

    LATEX使用于文本编辑器此次我是用的是latex安装方法是TeXLive 43 WinEdt 模板使用的是自动化学报模板 xff0c 使用的是中文模板 xff0c for paper in Chinese 文件 xff0c 打开之后选择打
  • 个人介绍以及课程期待

    本人朱杰 xff0c 现为北京理工大学大二学生 xff0c 主攻软件工程 xff0c 性格开朗 现在正在学习软件工程基础 xff0c 特写此文 xff0c 以明志 我希望能通过这门课能够更系统的了解软件工程 xff0c 之前对此的认知都是很

随机推荐