Embeded linux之移植boa

一、解压

a) tar xvf boa-0.94.13.tar.gz

二、设置交叉编译工具

a) vi /boa-0.94.13/src/Makefile

b) 

三、修改源码

a) vi /boa-0.94.13/src/compat.h

b) 

c) vi /boa-0.94.13/src/log.c

d) 

e) vi /boa-0.94.13/src/boa.c

f) 

 

g) vi /boa-0.94.13/src/boa.conf

h) 

 

四、编译

a) /boa-0.94.13/src/$ make

五、boa应用放到ARM板上/web/中和/sbin/

a) cp /boa-0.94.13/src/boa /ARM/web/boa

六、CGI脚本放到ARM板上/web/

a) mkdir -p /ARM/web/

b) cp examples/cgi-test.cgi /ARM/web/cgi-bin/cgi-test.cgi

c) chmod 777 /ARM/web/

七、boa.conf放到ARM板上/etc/

a) mkdir -p /etc/boa

b) cp boa.conf /etc/boa/boa.conf

c) chmod 777 /etc/boa/boa.conf

d) cp /etc/mime.types /ARM/etc/

八、mime.types放到ARM板上/etc/

a) cp mime.types /etc/mime.types

九、ARM板上修改配置文件

a) vi /etc/boa/boa.conf

b) 

c) 

d) 

此处配置完全根据现场情况而定

十、编写守护进程脚本

a) 

 

十一、编写测试网页

a) Vi /web/index.html

<html>

<head><title> BOA TEST </title>

</head>

<body>

<h1> BOA TEST</h1>

</body>

</html>

十二、浏览器访问网页

 CGI编程:

  Web服务器主机提供信息服务的标准接口。

  通过CGI接口,Web服务器就能够获取客户端提交的信息,转交给服务器端的CGI程序进行处理,最后返回结果给客户端(可以使用C/C++、Qt、Java等语言编写APP)。

  组成CGI通信系统的是两部分:

  1.html页面,就是在用户端浏览器上显示的页面。

  2.运行在服务器上的Cgi程序

  cgi编译:(如果用sqlite 记得指定头文件和库)

  arm-linux-gcc -I /xxx/sqlite-arm-build/include/ -L /xxx/sqlite-arm-build/lib/ -o xxx.cgi xxx.c -lsqlite3

 

转载于:https://www.cnblogs.com/pokerface/p/6573582.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/269787.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

dpkg ihr状态_考勤机数据无法同步

考勤机数据无法同步最后更新于&#xff1a;2020-06-29 15:27:45请先参考以下操作指南确保考勤机正确安装&#xff1a;http://help.ihr360.com/time_machine.html如果安装后仍出现数据无法同步的问题&#xff0c;则建议按下面步骤排查&#xff1a;首先在时间管理-时间设置-考勤机…

windows 下安装 rabbitmq报init terminating in do_boot错误

好长时间没有写东西了&#xff0c;记一个安装笔记吧。 目前市面上比较常用的几个消息中间件&#xff0c;rabbitmq算是风评比较好的&#xff0c;所以就拿来安装一下玩玩喽&#xff08;很有可能也仅限于是安装一下。。。。&#xff09;安装过程不表&#xff0c;无非是下载Erlang和…

待遇 新时达机器人_践行中国制造2025:工业机器人企业突围之路

(一)工业机器人产业突围任重道远工业机器人是实施自动化生产线、工业4.0、智能制造车间、数字化工厂、智能工厂的重要基础装备之一&#xff0c;为贯彻落实好《中国制造2025》将机器人作为重点发展领域的总体部署&#xff0c;推进我国机器人产业快速健康可持续发展&#xff0c;《…

Mybatis中@Param的用法和作用

用注解来简化xml配置的时候&#xff0c;Param注解的作用是给参数命名&#xff0c;参数命名后就能根据名字得到参数值&#xff0c;正确的将参数传入sql语句中 我们先来看Mapper接口中的Select方法 package Mapper; Mapper public interface Mapper { Select("select s_id…

常用类回顾之(String类)

String类&#xff1a; String类:表示不可变的字符串,当前对象创建完毕之后,该对象的内容(字符序列)是不能改变的,一旦内容改变就是一个新的对象. String对象的创建: 1):直接赋一个字面量: String str1 “ABCD”; 2):通过构造器创建: String str2 new String(“ABCD”); 两种方…

ad如何设置pcb板子形状_俺老孙画个圈板框与安装孔PCB系列教程110

点击上方蓝字关注我们画个板子&#xff0c;要先划圈&#xff0c;把所有笨蛋元器件圈起来。这个圈&#xff0c;就是板子的边框&#xff0c;简称板框。自定义板框形状比较复杂的电路板&#xff0c;一般由专业的CAD结构工程师设计&#xff0c;并提供DWG或者DXF格式的文件给电子工程…

Mybatis查询传递单个参数和传递多个参数用法

一&#xff1a;单个参数&#xff0c;Mybatis不会做特殊处理 二&#xff1a;多个参数&#xff0c;Mybatis会做特殊处理 1:传递多个多个参数时候&#xff0c;第一种写法如下 比如传递了两个参数&#xff0c;用 #{param1} and #{param2}取值 2:传递多个多个参数时候&#xff0c…

No.7 nginx、nfs、集群

安装并启动nginx服务 1、二进制安装nginx包 ~ yum -y install epel-release && yum -y install nginx #配置环境 关闭防火墙 ~ iptables -F // 或 systemctl stop filewallf 2、作为web服务修改配置文件 ~ vim /etc/nginx/nginx.conf //暂时不修改配置 3…

jsapi支付签名_微信支付小程序支付全流程

点击蓝色字关注我们&#xff01;一个努力中的公众号长的好看的人都关注了本文给大家讲解微信小程序支付全流程&#xff0c;以及相关功能源代码&#xff0c;项目不开放&#xff0c;带来不便尽请谅解。小程序支付主要包含如下几步骤&#xff0c;1.预下单-调用微信统一下单接口进行…

攻击防护手段_如何防护ddos流量攻击?

量攻击分很多种&#xff1a;我们常见的DDOS CC SYN UDP等&#xff0c;目前在网络中&#xff0c;流量攻击比较难解决&#xff0c;普通的IDC机房或是服务器商都是依靠硬防来解决&#xff0c;但是碰到大流量攻击&#xff0c;往往是拔线了事&#xff0c;所以都不是什么好办法&#…

Combox属性

ComboBox中DisplayMember和ValueMember有什么区别?ComboBox组件的数据绑定&#xff0c;在得到数据集后&#xff0c;只有设定好ComboBox组件的的三个属性就可以完成数据绑定了&#xff0c;这三个属性是&#xff1a;"DisplayMember"、 "ValueMember"、"…

MyBatis参数名称解析器-ParamNameResolver解析

ParamNameResolver ParamNameResolver是一个参数名解析器&#xff0c;负责把方法的参数按顺序解析出来并进行标注 主要用来处理接口形式的参数&#xff0c;最后会把参数处放在一个map中 map的key为参数的位置&#xff0c;value为参数的名字 package org.apache.ibatis.refle…

json 取值判断_【收藏级】.NETCore3.1中的Json互操作解读

本文将会全面介绍System.Text.Json 和 Newtonsoft.Json 的相同和异同之处&#xff0c;方便需要的同学做迁移使用&#xff0c;对未来&#xff0c;我们保持期待。文档比较几个重要的对象在 System.Text.Json 中&#xff0c;有几个重量级的对象&#xff0c;所有的JSON互操作&#…

使用wireshark抓包工具 检测不到本地网卡

wireshark 抓包工具无法检测到自身的网卡 下载wireshark 地址&#xff1a;https://www.wireshark.org/download.html安装&#xff0c;打开后发现没有windows 本身的网卡&#xff0c;查了一下&#xff0c;是Windows 本身抓包服务没有开启。打开Wireshark Legacy 在Start 下面没有…

学习Java的深拷贝和浅拷贝

关于Java的深拷贝和浅拷贝&#xff0c;简单来说就是创建一个和已知对象一模一样的对象。可能日常编码过程中用的不多&#xff0c;但是这是一个面试经常会问的问题&#xff0c;而且了解深拷贝和浅拷贝的原理&#xff0c;对于Java中的所谓值传递或者引用传递将会有更深的理解。 …

2017.3.22-morning

RIP是一种基于距离矢量的路由协议&#xff0c;以路由跳数作为计数单位的路由协议。适合用于比较小型的网络环境。 中文名路由信息协议 外文名 Routing Information Protocol 类 型 路由协议 计数单位 路由跳数[1] 英文原义&#xff1a;Routing Information Protocol 中文释…

转list_你知道Java数组转List的三种方式及对比吗?

前言&#xff1a;本文介绍Java中数组转为List三种情况的优劣对比&#xff0c;以及应用场景的对比&#xff0c;以及程序员常犯的类型转换错误原因解析。一.最常见方式(未必最佳)通过 Arrays.asList(strArray) 方式,将数组转换List后&#xff0c;不能对List增删&#xff0c;只能查…

Mybatis中的#号与$符号的区别

1、#{变量名}可以进行预编译、类型匹配等操作&#xff0c; 2、#{变量名}会转化为jdbc的类型。 3、${变量名}不进行数据类型匹配&#xff0c;直接替换。 4、#方式能够很大程度防止sql注入。 5、$方式无法方式sql注入。 6、$方式一般用于传入数据库对象&#xff0c;例如传入…

创建存储问题总结

创建存储过程时 1 drop procedure if exists pro_1; 2 delimiter // 3 create procedure pro_1( 4 5 ) 6 begin 7 8 end // 9 delimiter ; 发现这个问题时时因为看到输出的最后delimiter中有两个分号&#xff0c;所以怀疑这个地方语法存在问题 结尾的delimiter &#xff1b; …