nilmrun/docs/wsgi.md
2013-07-11 16:36:18 -04:00

36 lines
1.0 KiB
Markdown

WSGI Application in Apache
--------------------------
Install `apache2` and `libapache2-mod-wsgi`
We'll set up the server at URL `http://myhost.com/nilmrun`. The
process will run as user `nilm`, group `nilm`.
First, create a WSGI script `/home/nilm/nilmrun.wsgi` containing:
import nilmrun.server
application = nilmrun.server.wsgi_application("/nilmrun")
The first parameter is the path part of the URL.
Then, set up Apache with a configuration like below. SSL and access
control/authentication are strongly recommended since this can execute
arbitrary commands.
<VirtualHost *:443>
SSLEngine On
WSGIScriptAlias /nilmrun /home/nilm/nilmrun.wsgi
WSGIDaemonProcess nilmrun-procgroup threads=32 user=nilm group=nilm
<Location /nilmrun>
WSGIProcessGroup nilmrun-procgroup
WSGIApplicationGroup nilmrun-appgroup
SSLRequireSSL
# Access control example:
Order deny,allow
Deny from all
Allow from 1.2.3.4
</Location>
</VirtualHost>