thttpd交叉编译(arm) + cgi运行

时间:2024-10-12 07:06:26

thttpd交叉编译(arm) + cgi运行

概况

工作中遇到的需求。

物联网设备很多硬件配置都不高。相对来说。。

设备需要一个管理设备数据、控制设备的入口。这时候需要一个可配置的页面。例如:路由器、串口服务器、PDU等。

方案采取thttpd作为web服务器,接口使用cgi进行开发。简介明了,占用资源少。

thttpd交叉编译

官网:/software/thttpd/

​ thttpd 是一个简单、小巧、便携、快速且安全的 HTTP 服务器。

  • 简单的:

    它只处理实现 HTTP/1.1 所需的最低限度。好吧,也许比最低限度多一点。

  • 小的:

    参见 对比图 它还具有非常小的运行时大小,因为它不会分叉和对内存分配非常小心。

  • 便携的:

    它可以在大多数任何类 Unix 操作系统上干净地编译,特别包括FreeBSD、SunOS 4、Solaris 2、BSD/OS、Linux、OSF。

  • 快速地:

    在典型使用中,它与最好的全功能服务器一样快Apache、NCSA、网景)。在极端负载下它要快得多。

  • 安全的:

    它不遗余力地保护网络服务器机器免受 来自其他站点的攻击和入侵。

它还有一个非常有用的功能( 基于 URL 流量的限制 )目前没有其他服务器。另外,它支持 IPv6 开箱即用,无需修补。

编译

tar -zxvf thttpd-2.
cd thttpd-2.29/
./configure CC=arm-linux-gcc --host=arm-linux --prefix=/home/pnc120432be01/Desktop/liyuworkspace/arm/thttpd
make
make install

移植

编译出来的可执行文件thttpd直接拷贝到arm机器上

运行参数配置–两种方法

关于配置的建议:

可以配置thttpd的运行参数

port=80
user=www
host=0.0.0.0
logfile=/usr/local/thttpd/logs/
pidfile=/usr/local/thttpd/logs/
#throttles=/usr/local/thttp