操作系统:Linux。
我正在尝试寻找实现嵌入式系统的Web界面的可能方法。目前有一个shell(基于文本)和一小组命令用于查询设备。
我是新手,我的问题是:
我应该使用哪个Web服务器?(我在开发环境中使用了apache并尝试使用CGI获取一些页面,但似乎这不是嵌入式系统的正确选择)
假设我使用CGI,可以使用什么策略来在CGI和主应用程序之间传递数据? 我打算在MainApp中创建一个线程来处理来自CGI脚本的查询。此线程将调用MainApp中的接口,检索数据并将其传递给CGI。
操作系统:Linux。
我正在尝试寻找实现嵌入式系统的Web界面的可能方法。目前有一个shell(基于文本)和一小组命令用于查询设备。
我是新手,我的问题是:
我应该使用哪个Web服务器?(我在开发环境中使用了apache并尝试使用CGI获取一些页面,但似乎这不是嵌入式系统的正确选择)
假设我使用CGI,可以使用什么策略来在CGI和主应用程序之间传递数据? 我打算在MainApp中创建一个线程来处理来自CGI脚本的查询。此线程将调用MainApp中的接口,检索数据并将其传递给CGI。
你不必使用 Web 服务器,但在嵌入式方面还有比 Apache 更好的选择。Apache 是为嵌入式设计的,更大且更慢。
我不建议使用 CGI。它运行和开发都很慢。我可以代表其中之一的开发者,推荐 Appweb。Appweb 有两个很好的 Web 框架:
ESP 非常快速,并提供了将控制器绑定到 URL 的简单方式。Ejscript 更大,具有更广泛的类库。两者都是为嵌入式设计的,比 CGI 更出色,并且执行速度比 CGI 快 20 倍以上。
我正在使用LuCI进行工作,它是一种用于嵌入式设备的轻量级CGI。实际上,它是针对无线路由器的开源项目openwrt。
服务器是uhttpd,轻巧而强大。
CGI脚本是Lua编写的,其解释器不超过10k,非常精致。它是由C语言开发的,并且可以与C语言通信,功能强大。
因此,这是我的建议。