移植boa的一大把,我就不罗嗦了,这个就挺好:

实际上boa太老了,据说要用2.95.3的才好用,但现在编译器都不断更新,就是boa断货,他不更新,也没办法啊,是不是作者不想把成果公开了?呵呵。因此会出现至少2个错误,请看:

1、configure: error: can not run test program while cross compiling

解决方法:参考这个哥们写的,通用:

在交叉编译的时候总是使用configure --host=arm-linux 嘿嘿但是在CONFIGURE中有很多的测试程序是不可以在HOST上运行的就会出现: error: cannot run test program while cross compiling

类似的错误,可以使用CACHEFILE解决这个问题,还要谢谢ABSURD兄的文章给我的指导。

我是这样解决的第一步:记录下错误的地方如:checking abstract socket namespace... configure: error: cannot run test program while cross compiling

注意到abstract socket namespace在configure中查找abstract socket可以看到类似这样的结构

echo "$as_me:$LINENO: checking abstract socket namespace" >&5

echo $ECHO_N "checking abstract socket namespace... $ECHO_C" >&6

if test "${ac_cv_have_abstract_sockets+set}" = set; then

echo $ECHO_N "(cached) $ECHO_C" >&6

其中ac_cv_have_abstract_sockets是我们要查找的变量

使用echo ac_cv_have_abstract_sockets=yes>arm-linux.cache

然后

./configure --host=arm-linux --cache-file=arm-linux.cache

OK这样就搞定了

2、util.c:100:1: pasting "t" and "->" does not give a valid preprocessing token

解决方法:

修改compat.h中的

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

为:

#define TIMEZONE_OFFSET(foo) foo->tm_gmtoff

3、Could not chdir to "/etc/boa": aborting

解决方法:自己建立/etc/boa目录,把配置文件boa.conf拷贝进去

4、No such user:

把boa.conf的group和user都改为 0 即可

5、boa.c:211 - getpwuid: No such file or directory

这个需要看log输出才行,我的是 /var/boa_error_log

要改源代码了,定位/src/boa.c大约211行,注释掉如下:

#if 0

if (passwdbuf == NULL) {

DIE("getpwuid");

}

if (initgroups(passwdbuf->pw_name, passwdbuf->pw_gid) == -1) {

DIE("initgroups");

}

#endif

6、icky Linux kernel bug!

定位/src/boa.c大约211行,注释掉如下:

/* test for failed-but-return-was-successful setuid

* http://www.securityportal.com/list-archive/bugtraq/2000/Jun/0101.html

*/

#if 0

if (setuid(0) != -1) {

DIE("icky Linux kernel bug!");

}

#endif

7、was not found on thisserver

估计很多人遇到这个,主要是ScriptAlias最后面忘记加斜杠“/”

例如,ScriptAlias /www/cgi-bin跟/www/cgi-bin/是不一样的,呵呵

8、502 Bad GatewayThe CGI was not CGI/1.1 compliant

原因有很多,不过我的既没有在

“在 cgi.c中的函数complete_env加入 my_add_cgi_env(req, "LD_LIBRARY_PATH", "/lib"); ”

也没有让cgi程序的makefile加CFLAG = -static

也没有说因为中文而导致,我的是cgi程序的第一个printf导致的,请看:

printf("Content-type: text/html;charset=gb2312/n/n");

这样的不行:

printf("%s%c%c /n","Content-Type:text/html;charset=gb2312",13,10);

但是lighttpd可以,吐血吧?

另外在cgi-bin目录好像访问不了htm等静态文件,否则也显示The CGI was not CGI/1.1 compliant,知道的大侠可以留个言告知下。

//

其他的错误估计就是Servername了,搜索吧,问题不大。

祝各位玩的愉快!BOA太老了,能不用真的就不用,烦死人!

最近在搞lighttpd,死活移植不上去,移植ok后运行又没反应!

linux boa post方式失败,移植boa出现的错误及解决方法相关推荐

  1. linux sql failed,linux-centos-pgsql-Ident authentication failed for user “postgres”错误出现解决方法...

    首先,要找到pg_hba.conf\ -->cd /var/lib/pgsql/data -->vi pg_hba.conf 然后,将里面的配置文件修改如下: # TYPE DATABAS ...

  2. Linux系统出现Vsftp 553 Could Not Create File错误的解决_老杨风子_新浪博客

    Linux系统出现Vsftp 553 Could Not Create File错误的解决 使用LINUX系统的小伙伴们在使用vsftp的时候,发现出现553 Could not create fil ...

  3. Linux安装rsync命令失败,rsync 常见错误与解决方法整理

    我们都是通过错误日志查看 在rsyncd.log里面或.err文件里面,大家可以用记事本打开查看. 注意windows下面我们需要给SvcwRsync用户,管理同步目录的所有权限,基本上这样就可以了 ...

  4. centos linux 系统日常管理4 scp,rsync,md5sum,sha1sum,strace ,find Rsync 常见错误及解决方法 第十七节课...

    centos linux 系统日常管理4  scp,rsync,md5sum,sha1sum,strace ,find Rsync 常见错误及解决方法  第十七节课 rsync可以增量同步,scp不行 ...

  5. 开机启动失败_电脑常见开机引导错误的解决方法

    电脑在开机启动过程中,经常会出现开机失败的故障,开机失败比较常出现在开机引导项错误的问题上,比如引导文件没了,硬盘有问题等等,有些小问题重启几遍可以解决,有些问题就只能修复.这边小编跟大家整理分享几个 ...

  6. android删除打开方式,Android 打开方式选定后默认了改不回来?解决方法(三星s7为例)...

    Android 打开方式选定后默认了改不回来?解决方法(三星s7为例) 刚刚在测试东西,打开一个gif图,然后我故意选择用支付宝打开,然后...支付宝当然不支持,我觉得第二次打开它应该还会问我,没想到 ...

  7. 蒲公英linux客户端登录提示密码错误的解决方法

    这几天linux服务器上安装蒲公英客户端来异地组网,linux端第一次登录还好好的,重启再登录就提示账号或密码错误,多输入几次就提示未知错误.重启,卸载重装客户端,重新装系统都没用.最后在贝瑞科技的官 ...

  8. Linux中常见的几种错误和解决方法

    1.Linux中常见的错误有四种: ping: unknown host:主机找不到错误 timeout:请求超时 permission denied: 权限被拒绝 Connection refuse ...

  9. linux我安装虚拟机后安装FTP出现如下错误求解决

    linux我安装虚拟机后安装FTP出现如下错误求解决 useradd: user 'www.xxxx.xxx' already exists      linux系统   中间是个域名 我先在我挂载的 ...

  10. Tesorflow源代码安装方式以及错误的解决方法

    Tesorflow源代码安装方式以及错误的解决方法 参考文章: (1)Tesorflow源代码安装方式以及错误的解决方法 (2)https://www.cnblogs.com/greentomlee/ ...

最新文章

  1. Spring : 征服数据库 (两)
  2. python电脑版微信-python如何实现远程控制电脑(结合微信)
  3. 关于github里readme编辑的方法
  4. script和scriptreplay命令实现终端录制和回放。
  5. ESLint使用文档
  6. WORD如何定义新项目符号?
  7. Eclipse+JBoss+Seam我实在难以忍受
  8. 1078. Hashing (25)-PAT甲级真题
  9. 解决 No module named PyQt5.QtWebKitWidgets
  10. vuecli3 引入全局scss变量_利用scss公共库实现样式和业务组件解耦, 快速提高开发效率!...
  11. 【备用】SQL SERVER存储过程执行速度慢的问题
  12. 【数学建模】灰色模型
  13. BT401蓝牙模块KT1025A蓝牙芯片用户修改BLE的广播包数据的说明以及方法
  14. 使用java调用阿里云车牌识别API
  15. 入坑MATLAB必会的吐血总结
  16. 前端涉及的PS简单介绍
  17. Datawhale组队学习——Pytorch进阶训练技巧
  18. 字节跳动内推 校招 社招 实习生都可以投递
  19. labview虚拟心电监测系统_基于LabVIEW实现的心电监护系统
  20. 毕业季--写给大学毕业生的一番话

热门文章

  1. jquery.lazyload.js实现图片延迟加载——wordpress图片随滚动条渐显效果
  2. mysql 主从机器 触发器 的测试,完全正常 没有问题
  3. born to be wild---Bangkok篇
  4. 对话框的数据交换--MFC深入浅出
  5. 微信小程序canvas 图片绘制
  6. 两个app应用之间的跳转
  7. 第二天:继续完善路由层(router)及数据层(controller)
  8. React入门第一天(绑定事件,动态渲染,修改样式、传参)
  9. C#属性默认值设置(model实体类)
  10. php防止SQL注入