问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

boa服务器移植的时候编译成功但是执行时显示no such file or dirctory

发布网友 发布时间:2022-04-12 17:58

我来回答

2个回答

懂视网 时间:2022-04-12 22:19

写在前面 : boa 相关目录 : 1. boa.conf 的存放目录 : 默认 boa.conf 是在 /etc/boa.conf 目录的, boa 运行时会自动去找 /etc/bon.conf 文件。 这个设定是在 define.h 文件中定义的,可在编译之前进行修改。 2. log 目录 : 分为 Errorlog 和 AccessLog 两个

写在前面: boa相关目录:

1. boa.conf 的存放目录:

默认boa.conf是在/etc/boa.conf目录的,boa运行时会自动去找/etc/bon.conf文件。

这个设定是在define.h文件中定义的,可在编译之前进行修改。

2. log目录: 分为 Errorlog 和 AccessLog 两个目录,可在boa.conf中修改。

如:

ErrorLog /var/log/boa/error_log

AccessLog /var/log/boa/access_log

3. html文件存放目录, 可在boa.conf文件中修改。

如: DocumentRoot /var/www

4. cgi脚本存放目录, 可在boa.conf文件中修改。

如: ScriptAlias /cgi-bin/ /var/www/cgi-bin

5. mime.types存放目录 , 可在boa.conf文件中修改。

如: MimeTypes /etc/mime.types

=======================================================

移植boa服务

=======================================================

一. 编译boa程序

1. www.boa.org下载boa-0.94.13.tar.gz

2. 解压: tar –zxvf boa-0.94.13.tar.gz

3. 进入boa-0.94.13/src目录, 执行./configure

4. make

编译时用2.95.3以上的版本会出错:

util.c: 100: 1: pasting “t” and “->” does not give a valid preprocessing token make: [util.o] Error1

解决方法:

方法1>. 修改compat.h中的

#define TIMEZONE_OFFSET(foo) foo## ->tm_gmtoff

为:

#define TIMEZONE_OFFSET(foo) foo->tm_gmtoff

方法2>. 改用2.95.3版本的编译器。

二. 修改配置文件boa.conf

1. 建立/etc/boa目录, 并复制boa.conf到/etc/boa目录下,并按照以下步骤进行修改。

2. 修改访问权限: 修改User nobody 为 User 0 ; 修改Group nogroup 为 Group 0

3. 设定日志目录:boa日志有两部分,Errorlog 和 AccessLog

一般情况下为/var/log/boa/error_log 和 /var/log/boa/access_log两个文件。所以根据自己的情况情况设置日志目录:

ErrorLog /var/log/boa/error_log

AccessLog /var/log/boa/access_log

(注意:这里/var/log/boa目录必须为可写,否则会出项错误:log.c:73 – Unable to dup2 the error log: Bad file r.)

4. 设置html文件目录: DocumentRoot /var/www

5. 设置默认首页: DirectoryIndex index.html

6. 设置cgi脚本目录: 将

ScriptAlias /cgi-bin/ /usr/lib/cgi-bin

修改为

ScriptAlias /cgi-bin/ /var/www/cgi-bin

三. 根据第二步设置建立相关文件夹并放入文件:

1. 根据(第二.3步)的设置建立/var/boa 文件夹 。

2. 根据(第二.4步)的设置建立/var/www 文件夹 , 并在此目录下存放html文件(包括index.html文件)。

3. 根据(第二.6步)的设置建立/var/www/cgi-bin 文件夹 , 并存放一些用来测试的cgi脚本。

四. OK,运行boa程序。

在windows 下通过http://172.20.223.151这种形式访问,进行测试。

五. 移植到开发板

1>. (第一.3步)操作完成之后,修改Makefile文件:

将:

CC = gcc

CPP = gcc -E

该为:

CC = arm-linux-gcc

CPP = arm-linux-gcc -E

make即可。

2>. 拷贝PC上/etc/mime.types文件到开发板/etc目录下

(或者将boa.conf文件中 MimeTypes /etc/mime.types 修改为: MimeTypes /dev/null )

六. 常见错误:

1>. 错误1: gethostbyname:: No such file or directory

解决办法: 修改boa.conf 去掉 ServerName www.your.org.here 前的注释符号(#)

2>. 错误1: util.c:100:1: error: pasting "t" and "->" does not give a valid preprocessing token make: *** [util.o]

热心网友 时间:2022-04-12 19:27

/etc下面存放的都是配置文件好吗,基本都是文本文件而且是没有执行权限的,你这执行不是搞笑吗追问那需要怎么修改?可以详细一点告诉我么?比较小白

追答我觉得你既然会编译就应该知道你自己编译的文件是存放在哪儿,因为这些参数都是编译的时候设定的,安装目录包括配置文件存放目录还有执行文件存放目录,你自己应该最清楚吧。不过一般情况下,默认的手动安装软件的目录是/usr/local,执行文件存放在/usr/local/bin或/usr/local/sbin。你实在不清楚可以用find或locate自己搜索一下。还有一点就是我刚才说的默认路径都已经是linux系统环境变量PATH里面有,你用echo $PATH可以看,所以你直接执行boa试试也无妨,当然前提是你确认执行文件叫boa

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
邯郸自驾游到青岛马壕运河遗址推荐线路 株洲自驾到青岛马壕运河遗址途径地方 梧州回青岛马壕运河遗址要几个小时 石嘴山到青岛马壕运河遗址要多少油钱 可不可以用开水敷脸 开水能不能敷脸 发动机和发电机区别?? 电音之王朴智妍MV的图片? 电音之王mv里跳舞的是谁 自己怎样开网站 怎样把一个网页设置为主页 我手机接不到电话,别人打过来老是说通话中。是什么原因?我是苹果的手机 谷胡玺在长垣一中做出成绩了吗 新乡市长垣县宏力学校 冬季养肝怎么养? 今年高考200分,长垣一中复习班要多少钱? 长垣一中2011报多少人 长垣一中复读好还是濮阳市一中复读好? 养肝最重要的是什么? 通过编导考大学可靠不可靠?我想学编导,现在还不是很了解这个专业,有哪位神仙帮忙解释下? 上午养肝好还是下午好 体检报告说我窦性心律不齐,是什么意思? 我是南阳5中的,暑假快到了,想学编导,文化课400,能不能走个2本? 心脏.什么是窦性心率不齐 长垣一中高中高考状元有几人 长垣一中新任校长 什么是窦性心律失常? 中原名校是哪些学校 2022要想考上长垣一中分数线是多少? 为什么说早上是养肝黄金时间? 佳娜宝 媚点在上海哪里有专柜 浦发信用卡卡主消了,又还款,需要刷出来怎么办,资金怎样能取出_百度问一问 浦发信用卡还款后怎么刷不出来 浦发银行信用卡没有芯片,刷不了怎么办 我有一张浦发信用卡,总额度6000,取现3000。但是我想把6000都刷出来,这样可以吗? 红魔6pro充不进去电 红魔6r充电电压过高 红魔六充电显示感惊号 路由器和交换机有什么不同之处 红魔5G手机不用原装充电器可以充电,一用原装充电器充电就断断续续的? 红魔mars充不进去电 路由器和交换机的不同之处是什么? 红魔侧边可以充电吗 红魔5g充电提示碎屑 请问,集线器和交换机的不同之处 红魔手机充电分离伤电池吗 路邮器,集线器,交换机和HUB之间的不同和共同之处 用其它品牌的数据线给红魔手机充电会有什么影响吗 交换机路,路由器,集线器的不同之处? 路由器和交换机有什么作用?不同之处在哪里? 努比亚红魔1手机,一直显示usb在充电,但是我并没有插电,之后插电上去也没有反应,拔了也显示