Thank you all for your contributions!
Luis 2015-05-27 9:03 GMT+01:00 Henrik Sarvell <hsarv...@gmail.com>: > I do WSS via httpGate with a CA signed certificate, see this article under > the WSS section: http://picolisp.com/wiki/?Websockets > > On Wed, May 27, 2015 at 8:13 AM, Alexander Burger <a...@software-lab.de> > wrote: >> >> On Wed, May 27, 2015 at 07:25:59AM +0200, Alexander Burger wrote: >> > The file <names> holds a configuration for the servers to be started. >> > This is the part which still needs to be documented. >> >> Hmm, actually this is rather simple. >> >> >> Create a file with one server per line. For example, here some lines >> from my config file for the wiki and some demo apps: >> >> app 8080 app /home/app log/app ./pil app/main.l lib/app.l >> -main app/_patch.l -go -wait >> wiki 5000 app /home/app log/wiki ./pil wiki/main.l lib/app.l >> -main wiki/_patch.l -go -wait >> sushi 22000 app /home/app log/sushi ./pil sushi/main.l lib/app.l >> -main -go -wait >> menu 24000 app /home/app log/menu ./pil menu/main.l lib/app.l >> -main -go -wait >> canvas 27002 app /home/app log/canvas ./pil misc/canvas.l lib/app.l >> -main app/_patch.l -go -wait >> phone 27003 app /home/app log/phone ./pil misc/phone.l lib/app.l >> -main app/_patch.l -go -wait >> osm 27004 app /home/app log/osm ./pil osm/main.l lib/app.l >> -main app/_patch.l -go -wait >> >> i.e. the arguments, separated by spaces, are: >> >> 1. The name of the application >> 2. The port where this server should listen at >> 3. The user name >> 4. The working directory of the server process >> 5. The log file where stdout and stderr should be redirected to >> 6. The command line to start the server process >> >> (For optimal access if you have really many servers, you should >> 'balance' the contents of the config file. That's left as a task to the >> reader) >> >> >> When a client requests e.g. >> >> https://7fach.de/canvas >> >> this server will be started. That is, the name 'canvas' is looked up, >> and 'httpGate' checks if a process is listening at 27002. If not, it >> starts that process. >> >> The 'go' function of the server (see the example in "app/main.l") may >> call >> >> (retire 20) >> >> This will cause this server to stop if there are no child processes and >> no activities for 20 minutes. >> >> 'httpGate' sends the NAME of the application under which it was invoked, >> and the PORT it should listen at, in environment variables. Thus, the >> 'server' call is >> >> (server (or (format (sys "PORT")) 8080) "!work") ) >> >> It uses the PORT passed in, or defaults to 8080. >> >> >> In that way you may have thousands of client application running on a >> single machine, each one only started and stopped as necessary. >> >> ♪♫ Alex >> -- >> UNSUBSCRIBE: mailto:firstname.lastname@example.org?subject=Unsubscribe > > -- UNSUBSCRIBE: mailto:email@example.com?subject=Unsubscribe