Actually, after this post, I restored my 19.07.7 backup soon. Before that, I did not check the log but tried /etc/init.d/uhttpd stop|start|restart, ps showed no uhttpd process either.
And, today, I find more time to try to reproduce it. The root cause comes out unexpectedly.
The mirror-opkg-repository leads to this. When I disable customfeeds and change back to use the official repository to install luci-ssl, uhttpd will survive, but only serve on port 80 for http not port 443 for https.
I start to doubt wolfssl, which just replaced mbedtls to be the back-end in 21.02.0-rc1. But, installation of openssl shows the same symptoms.
If I delete the crt and key files provided, upon restart uhttpd will generate new ones. Then, the https server comes back but chrome-like browsers will complain insecurity and warn not to continue.
So, I realize maybe the version upgrade of kernel or SSL back-end brings incompatibility to my old certificate and key, those were generated 1.5 years ago.