1. Lighttpd (Linux) - ralac/tinypgwebsocketapi GitHub Wiki
In order to prevent lighty from close CGI connection after websocket upgrade, we need to build a patched version of Lightttpd.
Download and patch
git clone https://github.com/ralac/tinypgwebsocketapi
cd tinypgwebsocketapi
git clone https://git.lighttpd.net/lighttpd/lighttpd1.4.git
cd lighttpd1.4
git checkout lighttpd-1.4.50
patch src/mod_cgi.c ../mod_cgi.patch
Build
./autogen.sh
./configure --with-openssl --prefix=/usr --sbindir=/usr/bin --libdir=/usr/lib/lighttpd/ --sysconfdir=/etc/lighttpd --with-lua
make
sudo make install
Create lighttpd user
sudo useradd -m -d /var/lib/lighttpd lighttpd
Configuration files
sudo mkdir -p /etc/lighttpd
sudo cp -a doc/config/*.conf doc/config/*.d /etc/lighttpd/
sudo patch /etc/lighttpd/lighttpd.conf ../lighttpd.conf.patch
sudo patch /etc/lighttpd/modules.conf ../modules.conf.patch
Log directory
sudo mkdir -p /var/log/lighttpd
sudo chown lighttpd:lighttpd /var/log/lighttpd
Main host configuration for tinypgwebsocketapi
sudo cat ../lighttpd-tinypgwebsocketapi.conf >> /etc/lighttpd/lighttpd.conf
sudo mkdir /srv/www/htdocs/app
cd ..
sudo ln -s $(pwd) /srv/www/htdocs/app/api
Add to systemd
sudo cp lighttpd.service /lib/systemd/system/
Enable and start systemd lighttpd service
sudo systemctl enable lighttpd
sudo systemctl start lighttpd