source: package_branches/invirt-web/cherrypy/code/unauth.fcgi @ 2652

Last change on this file since 2652 was 2652, checked in by broder, 15 years ago

Setup hosting for static resources in the InvirtWeb? and
InvirtUnauthWeb? classes, instead of in the fcgi configuration.

  • Property svn:executable set to *
File size: 1.3 KB
Line 
1#!/usr/bin/python
2"""Main FastCGI entry point for unauthenticated web interface"""
3
4import cherrypy
5import os
6import sys
7from main import InvirtUnauthWeb
8
9dev = False
10base_dir = os.path.dirname(__file__)
11
12def usage():
13    print >>sys.stderr, """%s [config]
14
15Run server as FastCGI, with CherryPy config from "main.conf".
16
17With `config`, run standalone with CherryPy config from `config`.
18""" % sys.argv[0]
19    sys.exit(2)
20
21if __name__ == "__main__":
22    static_dir = os.path.join(base_dir, 'static')
23
24    if len(sys.argv) > 2:
25        usage()
26    if len(sys.argv) > 1:
27        if sys.argv[1] in ('-h', '--help'):
28            usage()
29        conf_file = sys.argv[1]
30        dev = True
31    else:
32        conf_file = os.path.join(base_dir, 'main.conf')
33
34    app_config = {
35        '/': {
36            'tools.invirtwebstate.on': True,
37            },
38        }
39                   
40    app = cherrypy.tree.mount(InvirtUnauthWeb(),
41                              '/',
42                              app_config)
43    app.merge(conf_file)
44    cherrypy.config.update(conf_file)
45
46    if dev:
47        cherrypy.server.quickstart()
48        cherrypy.engine.start()
49        cherrypy.engine.block()
50    else:
51        cherrypy.engine.start(blocking=False)
52        from flup.server.fcgi import WSGIServer
53        server = WSGIServer(cherrypy.tree)
54        server.run()
Note: See TracBrowser for help on using the repository browser.