equal
deleted
inserted
replaced
6 """ |
6 """ |
7 |
7 |
8 # CGI handler for WSGI |
8 # CGI handler for WSGI |
9 import wsgiref.handlers |
9 import wsgiref.handlers |
10 |
10 |
11 # our WSGI app |
11 def cgi_error () : |
12 from lib import wsgi |
12 """ |
|
13 Dumps out a raw traceback of the current exception to stdout, intended for use from except |
|
14 """ |
|
15 |
|
16 import traceback, sys |
|
17 |
|
18 print 'Status: 500 Internal Server Error\r' |
|
19 print 'Content-type: text/plain\r' |
|
20 print '\r' |
|
21 |
|
22 traceback.print_exc(100, sys.stdout) |
13 |
23 |
14 def cgi_main () : |
24 def cgi_main () : |
15 """ |
25 """ |
16 Run in CGI mode |
26 Run in CGI mode |
17 """ |
27 """ |
18 |
28 |
19 try : |
29 try : |
20 from lib import page |
30 from lib import page_tree |
21 |
31 |
22 # load page list |
32 # load page list |
23 page.load_page_tree() |
33 page_tree.load() |
|
34 |
|
35 # our WSGI app |
|
36 from lib import wsgi |
|
37 |
|
38 # create handler |
|
39 cgi_handler = wsgiref.handlers.CGIHandler() |
|
40 |
|
41 # run once |
|
42 cgi_handler.run(wsgi.app) |
24 |
43 |
25 except : |
44 except : |
26 import traceback, sys |
45 cgi_error() |
27 |
|
28 print 'Status: 500 Internal Server Error\r' |
|
29 print 'Content-type: text/plain\r' |
|
30 print '\r' |
|
31 |
|
32 traceback.print_exc(100, sys.stdout) |
|
33 |
|
34 return |
|
35 |
46 |
36 # create handler |
|
37 cgi_handler = wsgiref.handlers.CGIHandler() |
|
38 |
|
39 # run once |
|
40 cgi_handler.run(wsgi.app) |
|
41 |
|
42 if __name__ == '__main__' : |
47 if __name__ == '__main__' : |
43 cgi_main() |
48 cgi_main() |