嵌入式设备之web服务器
选择web服务器,主要从以下方面考虑:
1、 web服务器页面编写支持的语言
2、 web服务器的空间占用大小
3、 web服务器提供的功能, 是否支持https、运行日志
4、 web服务器的安全性,漏洞是否更多
5、web服务器的页面实现难易程度
6、 web服务器的交叉编译难度
嵌入式web服务器的比较:
https://www.cnblogs.com/lidabo/p/4736447.html, 现实生活中自己接解的web服务器有boa、appweb、goahead、uhttpd。
boa:
boa 官网: http://www.boa.org, boa支持C语言的web服务器,是自己2018年当嵌入式讲师时,给学生移植服务器的boa, 2005已经后基本没有维护, 支持功能较少,不支持https、ssl等特性。
boa的源码与移植说明: 主要支持CGI的方式都可以在boa服务器上运行, C语言通过cgic进行编译, php语言通过php编译出支持cgi的方式
appweb:
1、apache的缩小版, 配置方式与apache类似, 支持php、cgi、esp, 支持https、ssl功能, 交叉编译难度不高, appweb自身漏洞方面不是很多,漏洞方面更多的是与cgi配合使用的解释型语言
2、 appweb官网: https://www.embedthis.com/appweb/
3、 移植说明: 下载appweb源码,看源码的doc目录进行操作
goahead:
1、跟boa类似,比boa强大, 支持php、asp、cgi, 支持https、ssl功能,交叉编译难度不高, 漏洞不是很多
2、官网:https://www.embedthis.com/goahead/ 跟appweb是同家公司维护
3、移植说明: 下载goahead源码, 看源码的doc目录进行操作
uhttpd:
1、openwrt 自身实现的web服务器, 支持https 和 ssl, 没有试过单独移植,openwrt自带有完整的生态环境,直接配置就可以编译使用, 支持cgi、php、lua、cgi
疑问:
1、如果goahed支持cgi, 而php也是标准cgi, 如何实现goahead上加入php的支持