BusyBox has its own httpd server which is smaller and simpler than uhttpd.
I just tested Luci and it looks like it works just fine on bb-httpd.
This may be a good option for tiny 4mb routers like TP-Link WR740N.
As far I understood uhttpd was developed to make in process lua interpreter, to make a fast native support of ubus over JSON-RPC and to support https. So uhttpd is still better to use if disk space is not so limited.
On x64 platform bb-uhttpd took 8192 bytes (diff sizes of /bin/busybox with enabled and disabled httpd)
On the same x64 image uhttpd took 58 kb but on MIPS WRN1043ND it took 33189.
My question is:
- Is any problems expected with busybox-httpd? As far I see there is no any rate limiting.
- Did I correctly understood original intent of development uhttpd?
- Will you accept a PR with a new package
luci-busybox-httpd
similar toluci-nginx
with configurations?
Does anybody else tried such setup?
Some technical details
Current version of busybox used by OpenWrt is 1.31.1 but I compiled it with 1.33 because the latest release contains some of my patches with new feature flags to make httpd smaller:
- HTTPD_ACL_IP=n Remove access by IP checks because this will be handled by firewall
- HTTPD_DATE=n Disable Date header
- HTTPD_LAST_MODIFIED=n Disable Last-Modified to use ETag instead
- HTTPD_ETAG=y use ETag which is faster and easier than Last-Modified