diff gpp/apache/sg101.wsgi @ 47:6dfcbbf11243

Added a .wsgi file and an offline.html file.
author Brian Neal <bgneal@gmail.com>
date Sun, 21 Jun 2009 21:26:49 +0000
parents
children 31cb8d55e3a1
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/gpp/apache/sg101.wsgi	Sun Jun 21 21:26:49 2009 +0000
@@ -0,0 +1,40 @@
+import os
+import sys
+
+OFFLINE = True
+
+sys.path.append('/home/var/django-sites/sg101/django')
+sys.path.append('/home/var/django-sites/sg101/3rdparty')
+sys.path.append('/home/var/django-sites/sg101/sg101-trunk')
+sys.path.append('/home/var/django-sites/sg101/sg101-trunk/gpp')
+
+os.environ['PYTHON_EGG_CACHE'] = '/home/var/django-sites/sg101/eggs/'
+
+
+def offline_handler(environ, start_response):
+    wsgi_dir = os.path.dirname(__file__)
+    sys.path.append(project_dir)
+
+    offline_file = os.path.join(wsgi_dir, '..', 'templates', 'offline.html')
+    if os.path.exists(offline_file):
+        response_headers = [('Content-type','text/html')]
+        response = open(offline_file).read()
+    else:
+        response_headers = [('Content-type','text/plain')]
+        response = 'SG101 website maintenance in progress; please check back soon.'
+ 
+    if environ['REQUEST_METHOD'] == 'GET':
+        status = '503 Service Unavailable'
+    else:
+        status = '405 Method Not Allowed'
+    start_response(status, response_headers)
+    return [response]
+
+
+if not OFFLINE:
+   os.environ['DJANGO_SETTINGS_MODULE'] = 'gpp.settings'
+   import django.core.handlers.wsgi
+   application = django.core.handlers.wsgi.WSGIHandler()
+else:
+   application = offline_handler
+