appweb+matrixssl+php+sqlite是一款十分流行及轻量,十分适合嵌入式平台的web服务器实现方案,网上关于搭建这个平台的资料大多基于appweb2.4及更早,这里给出的思路为叙述appweb4.5 及 matrixssl 3.4.2 的交叉编译及下载目标板的思路及展示了实现的效果。至于php和sqlite的移植,比较简单没有说明。下面是叙述。

注:本文适合有一定嵌入式开发经验及web服务器基础的技术人员阅读,若没有基础请先看文末的参考文献或查询相关资料。

主要思路分为以下几大步。

#下载 appweb  matrix bit 源代码。

.#编译bit

#使用bit编译appweb

#修改bit生成配置

#编译成功

#下载目标板测试

在配置appweb时的配置是:

./configure --enable-log --enable-multi-thread --enable-upload --enable-auth --enable-auth-file --enable-auto-compile --with-matrixssl=/mnt/hgfs/ResourceZoom/CentosShare/EmbeddedWebservice/matrixssl-3-4-2-open

注意matrix中需要删除

CCARCH后面相关的平台的宏定义。否则编译时报错。

在修改bit的生成配置时需要注意以下:

#!/bin/bashexport CC="arm-linux-gcc"
export AR="arm-linux-ar"
export LD="arm-linux-ld"
export RANLIB="arm-linux-ranlib"
export STRIP="arm-linux-strip"
export CC_FOR_BUILD="gcc"
echo "@ done!"

上面的脚本是改变终端的默认编译器。不能直接使用,需要将所有改变的编译器及连接器改写到configure完成的bit配置文件中。

下载到目标板测试:

普通服务器的运行串口终端效果:

看见了吗?有一个error,是因为 读写权限的问题,应该写为755,而不是777.

带有ssl服务器的运行状态截图:

很奇怪的是ssl的服务器访问时有些问题,报错cannot upgrade socket,我怀疑是openssl的证书的原理是通过ssl他自己的算法认证服务器本地,而这里交叉编译时,是在宿主机上进行的,这个答案只有在交叉编译openssl后在目标机生成证书才可以给出答案了。呵呵,有兴趣额读者可以自己证实下哦。可以发email给我。leoluopy@gmail.com

参考文章:

http://blog.csdn.net/lqrensn/article/details/9124037

http://bbs.chinaunix.net/thread-2082286-1-1.html

http://www.doc88.com/p-994345534512.html

http://wenku.baidu.com/link?url=9Kd1olO4knNW_EMhxvoD5g8mKTMPJk2tIxnf2HY-eIvzEl_LurPzE7DbkYDI3ixh3ivkTWV02dlUbOvZe9hQc-ypB8HUW8CY-lgBsXAkzuO

http://lovesea.blog.51cto.com/382446/95572/

http://blog.csdn.net/lqrensn/article/details/8132275

http://blog.csdn.net/lqrensn/article/details/9112321

http://blog.chinaunix.net/uid-184310-id-2829293.html

嵌入式服务器appweb交叉编译指南相关推荐

  1. Win2008 R2 WEB 服务器安全设置指南之修改3389端口与更新补丁

    这篇文章主要介绍了Win2008 R2 WEB 服务器安全设置指南之修改3389端口与更新补丁,需要的朋友可以参考下 3389端口是指windows系统中的远程桌面端口,可以使用它本管理远程计算机,就 ...

  2. 自己用嵌入式系统搭建云服务器,嵌入式服务器搭建

    嵌入式服务器搭建 内容精选 换一换 当您想在Internet上通过域名访问您的网站时,可以通过本操作将域名托管至华为云的云解析服务,并为域名添加解析记录.例如,搭建一个网站服务器,采用IPv4格式的弹 ...

  3. html嵌入war_WAR文件与具有嵌入式服务器的Java应用程序

    html嵌入war 大多数服务器端Java应用程序(例如,面向Web或面向服务的)都打算在容器中运行. 打包这些应用程序以进行分发的传统方法是将它们捆绑为WAR文件. 这只不过是具有标准目录布局的ZI ...

  4. WAR文件与具有嵌入式服务器的Java应用程序

    大多数服务器端Java应用程序(例如,面向Web或面向服务的)都希望在容器中运行. 打包这些应用程序以进行分发的传统方法是将它们捆绑为WAR文件. 这无非是具有标准目录布局的ZIP归档文件,其中包含运 ...

  5. 服务器mysql如何添加数据库文件,如何在使用MySQL作为嵌入式服务器时创建数据库文件...

    我试图构建一个应用程序,该应用程序将使用MySQL嵌入式数据库(目前在OS X上,但最终在OS X和Windows上)以及I我以this example为起点.我已经成功地能够建立它,使用cmake这 ...

  6. 阿里云服务器新手选型指南

    阿里云服务器新手选型指南: 小型网站:1核2G共享型以上 中大型网站:4核8G通用型以上 项目临时测试:突发性能型.共享型,配置够用就行. 更多应用,比如分布式计算.AI学习等等,则需选择更好的云服务 ...

  7. Linux编译和下载嵌入式实验,嵌入式实验6交叉编译及Linux简单程序设计实验

    <嵌入式实验6交叉编译及Linux简单程序设计实验>由会员分享,可在线阅读,更多相关<嵌入式实验6交叉编译及Linux简单程序设计实验(7页珍藏版)>请在人人文库网上搜索. 1 ...

  8. 嵌入式工程师的面试指南

    文章来源:电子通信.嵌入式工程师的面试指南 今天我们聊聊电子通信,嵌入式工程师面试的那些事. ... 一.公司面试求职者的目的是什么 寻找备胎的公司. 团队大体成形,有缺人的hc名额,但是项目不急的公 ...

  9. 服务器虚拟环境使用指南

    服务器虚拟环境使用指南 虚拟环境使用原则: 第一部分:创建只属于自己的虚拟环境(本教程的以momo用户为例) 第一步:打开 Terminal 第二步:激活conda 第三步:创建只属于自己的虚拟环境 ...

最新文章

  1. 零基础入门学习Python(3) 变量与字符串
  2. js中判断-0 ,js无穷数Infinity
  3. jdbcType与javaType的对应关系
  4. Linux网络编程实例详解
  5. leetcode题解976-三角形的最大周长
  6. 5.18下午 口语课 阅读
  7. mono webservice问题请教
  8. 制作OpenStack Windows Server 2016镜像
  9. 峰值性噪比matlab,PSNR峰值信噪比matlab实现
  10. 英语基础语法学习笔记 0
  11. python自动化webdriver_轻松自动化---selenium-webdriver(python) (六)
  12. 解决%d format: a number is required, not str问题【一试灵】
  13. Microsoft Visual SourceSafe的使用
  14. Cannot add or update a child row: a foreign key constraint fails都有哪些原因
  15. php 通配符删除文件,如何使用通配符删除文件夹?
  16. 在Ansible中缓存事实
  17. 小知识:Java中冒号(:)有哪些用法?
  18. Intraweb之EasyUI篇
  19. 手机如何压缩照片?压缩方法分享
  20. C#自恋数字黑洞—水仙花数、玫瑰花数、五角星数

热门文章

  1. 英文会议口头报告(整理)
  2. hive 留存率 计算
  3. 什么是虚拟机?虚拟机有什么用?虚拟机的特点?
  4. 混合App WebView自动化测试
  5. 一文看懂Lambda
  6. Android闹钟制作过程图,小学闹钟手工制作步骤详解(配图)
  7. 基于加密短信验证码的蓝牙智能锁设计
  8. Win7 x64 Vad遍历模块
  9. python 股票指标库talib_【手把手教你】股市技术分析利器之TA-Lib(一)
  10. 人生的意义是通过努力活得更好