This is a maintenance fork of libuhttpd
 
 
 
Go to file
Jianhui Zhao 5f4f6e0d97 support plugin
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2020-03-14 00:25:42 +08:00
cmake/Modules Use libev instead of libubox 2019-08-31 16:33:08 +08:00
example support plugin 2020-03-14 00:25:42 +08:00
src support plugin 2020-03-14 00:25:42 +08:00
.gitignore Improve CMakeLists.txt 2017-12-30 12:24:00 +08:00
.gitmodules http-parser: Use submodule 2020-03-06 13:48:48 +08:00
.travis.yml Fix ci 2019-08-31 16:55:19 +08:00
BUILDOPENWRT.md chmod 644 2018-03-18 10:48:32 +08:00
BUILDOPENWRT_ZH.md chmod 644 2018-03-18 10:48:32 +08:00
CMakeLists.txt Use libev instead of libubox 2019-08-31 16:33:08 +08:00
CONTRIBUTING.md chmod 644 2018-03-18 10:48:32 +08:00
CONTRIBUTING_ZH.md chmod 644 2018-03-18 10:48:32 +08:00
LICENSE Change the license information 2019-09-03 15:03:35 +08:00
README.md support plugin 2020-03-14 00:25:42 +08:00
README_ZH.md support plugin 2020-03-14 00:25:42 +08:00
gen_cert.sh Optimize build for example 2018-01-05 21:46:03 +08:00
openssl.cnf Optimize build for example 2018-01-05 21:46:03 +08:00

README.md

libuhttpd(中文)

license PRs Welcome Issue Welcome Release Version Build Status

A Lightweight and fully asynchronous HTTP server library based on libev and http-parser for Embedded Linux.

Features

  • Lightweight and fully asynchronous
  • Use libev as its event backend
  • Support HTTPS - OpenSSL, mbedtls and CyaSSl(wolfssl)
  • Support plugin
  • Flexible - you can easily extend your application to have HTTP/HTTPS services
  • Code structure is concise and understandable, also suitable for learning

Dependencies

  • libev
  • http-parser - A parser for HTTP messages written in C
  • mbedtls - If you choose mbedtls as your SSL backend
  • 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/example

Then use the command curl or browser to test

$ curl 'https://127.0.0.1:8000' -v

Install on OpenWrt

opkg update
opkg list | grep libuhttpd
opkg install libuhttpd-nossl

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

Example

Contributing

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

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