Mercurial > public > bravenewsurf
view bns_website/apache/bns.wsgi @ 104:f00199f1524c
Changes for running in a virtualenv on the new server jaguar.
author | Brian Neal <bgneal@gmail.com> |
---|---|
date | Tue, 09 Apr 2013 21:29:30 -0500 |
parents | a5e8741452a3 |
children |
line wrap: on
line source
import os import site import sys OFFLINE = False site.addsitedir('/svr/django-sites/bns/lib/python2.7/site-packages') here = os.path.dirname(__file__) website = os.path.dirname(here) repo = os.path.dirname(website) project = os.path.dirname(repo) eggs = os.path.join(project, 'eggs') django = os.path.join(project, 'django') sys.path.extend([repo, website, django]) os.environ['PYTHON_EGG_CACHE'] = eggs def offline_handler(environ, start_response): """ This handler is run when the site is in maintenance mode. It either displays a brief outage message, or, if a template file exists, it reads the file and returns its contents. """ wsgi_dir = os.path.dirname(__file__) sys.path.append(wsgi_dir) offline_file = os.path.abspath( 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 = ('Brave New Surf 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'] = 'bns_website.settings.production' import django.core.handlers.wsgi application = django.core.handlers.wsgi.WSGIHandler() else: application = offline_handler