ant-http/README.md

57 lines
1.8 KiB
Markdown
Raw Normal View History

2016-12-07 13:10:53 +01:00
![Logo](https://github.com/lxsang/ant-http/raw/master/ant-logo.png)
# ant-http
2018-03-19 11:59:12 +01:00
2021-03-10 16:26:28 +01:00
A lightweight HTTP/HTTPs (1.1) web server written in C:
- Nonblocking event driven base server with configurable number of thread pool workers.
2018-10-07 14:17:16 +02:00
- Initial goal is for embedded Linux, but can be used as general purpose web server.
2021-03-10 16:26:28 +01:00
- Support:
- SSL via open SSL,
2021-08-29 00:15:20 +02:00
- builtin support Sqlite 3,
2021-03-10 16:26:28 +01:00
- web socket,
2021-03-23 16:53:31 +01:00
- reverse proxy
2019-03-01 11:09:03 +01:00
- It is also extensible via its extension mechanism that allows to extends the server capability.
2021-03-10 16:26:28 +01:00
- Page compression with gzip, deflate, cache control
2021-02-05 03:25:46 +01:00
2018-10-08 22:53:08 +02:00
## Plugins:
* CGI interface for external scripting language (e.g. PHP): [https://github.com/lxsang/antd-cgi-plugin](https://github.com/lxsang/antd-cgi-plugin)
2018-09-22 15:24:16 +02:00
* Lua extension [https://github.com/lxsang/antd-lua-plugin](https://github.com/lxsang/antd-lua-plugin): using Lua as serverside script
2018-10-08 23:26:19 +02:00
* Web terminal [https://github.com/lxsang/antd-wterm-plugin](https://github.com/lxsang/antd-wterm-plugin): plugin for using Unix terminal from the web via websocket
* Web VNC [https://github.com/lxsang/antd-wvnc-plugin](https://github.com/lxsang/antd-wvnc-plugin): Remote computer access using VNC protocol on the web (via websocket)
2018-09-22 20:25:51 +02:00
2018-09-22 20:26:19 +02:00
## Build from source
2018-09-22 20:25:51 +02:00
### build dep
* git
* make
* build-essential
### server dependencies
2019-11-08 16:22:44 +01:00
* libssl-dev (expecting openssl v1.1.1d, only support TLSv1.2 and TLSv1.3)
2018-09-22 20:25:51 +02:00
* libsqlite3-dev
2021-02-05 03:31:06 +01:00
* zlib-dev
2018-09-22 20:25:51 +02:00
### build
2021-03-23 18:31:14 +01:00
With all dependencies installed:
2018-09-22 20:25:51 +02:00
```bash
mkdir antd
cd antd
2019-11-19 17:48:59 +01:00
# Replace x.x.x by the version number
2018-10-03 11:21:28 +02:00
# build without plugin
2022-08-01 18:21:19 +02:00
wget -O- https://get.iohub.dev/antd | bash -s "x.x.x"
2019-11-13 13:40:52 +01:00
# or from the distribution tarball
tar xvzf antd-x.x.x.tar.gz
cd antd-x.x.x
2022-08-01 18:23:04 +02:00
./configure --prefix=/usr
2019-11-13 13:40:52 +01:00
make
sudo make install
2018-09-22 20:25:51 +02:00
```
2019-11-14 18:48:44 +01:00
### Generate distribution
2019-11-13 11:48:54 +01:00
```sh
libtoolize
aclocal
autoconf
automake --add-missing
2019-11-13 13:05:04 +01:00
make distcheck
2019-11-19 17:48:59 +01:00
```