libuhttpd(中文)

625332134c6f4d4600884b99daebf603.png625332134c6f4d4600884b99daebf603.png625332134c6f4d4600884b99daebf603.png625332134c6f4d4600884b99daebf603.png625332134c6f4d4600884b99daebf603.png

A Lightweight and fully asynchronous HTTP server library based on libubox and referenced from uhttpd for Embedded Linux.

Keep Watching for More Actions on This Space

Features

Lightweight and fully asynchronous

Use libubox as its event backend

Support HTTPS - OpenSSL, mbedtls and CyaSSl(wolfssl)

Flexible - you can easily extend your application to have HTTP/HTTPS services

Code structure is concise and understandable, also suitable for learning

Lua Template - Embed Lua code into HTML code, like embedding PHP into HTML

Lua binding

Dependencies

ustream-ssl - If you need to support SSL

mbedtls - If you choose mbedtls as your SSL backend

CyaSSl(wolfssl) - If you choose wolfssl as your SSL backend

openssl - If you choose openssl as your SSL backend

Configure

See which configuration are supported

~/libuhttpd/$ mkdir build && cd build

~/libuhttpd/build$ cmake .. -L

~/libuhttpd/build$ cmake .. -LH

Build and install

~/libuhttpd/build$ make && sudo make install

Run Example

Run

~/libuhttpd/build$ ./example/helloworld

Then use the command curl or browser to test

$ curl -k 'https://127.0.0.1:8000/hello?name=test' -d '{"name":"libuhttpd"}' -v

Install on OpenWrt

opkg update

opkg list | grep libuhttpd

opkg install libuhttpd-nossl

If the install command fails, you can compile it yourself.

Contributing

If you would like to help making libuhttpd better, see the CONTRIBUTING.md file.

QQ group: 153530783

If the project is helpful to you, please do not hesitate to star. Thank you!

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐