Add maintenance mode in wsgi file

This commit is contained in:
Claude Paroz 2012-12-13 14:40:39 +01:00
parent 49262dca27
commit 42d5c6ba2c

View file

@ -1,28 +1,34 @@
"""
WSGI config for epcstages project.
This module contains the WSGI application used by Django's development server
and any production WSGI deployments. It should expose a module-level variable
named ``application``. Django's ``runserver`` and ``runfcgi`` commands discover
this application via the ``WSGI_APPLICATION`` setting.
Usually you will have the standard Django WSGI application here, but it also
might make sense to replace the whole Django WSGI application with a custom one
that later delegates to the Django one. For example, you could introduce WSGI
middleware here, or combine a Django application with an application of another
framework.
"""
import os
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "common.settings")
UPGRADING = False
# This application object is used by any WSGI server configured to use this
# file. This includes Django's development server, if the WSGI_APPLICATION
# setting points here.
from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()
# Apply WSGI middleware here.
# from helloworld.wsgi import HelloWorldApplication
# application = HelloWorldApplication(application)
def upgrade_in_progress(environ, start_response):
response_headers = [('Content-type','text/html')]
response = """
<body>
<h1>This site is in maintenance mode, please come back in some minutes.</h1>
<h1>Ce site est actuellement en maintenance, merci de revenir dans quelques minutes.</h1>
</body>
"""
if environ['REQUEST_METHOD'] == 'GET':
status = '200 OK'
else:
status = '403 Forbidden'
start_response(status, response_headers)
return [response]
if UPGRADING:
application = upgrade_in_progress
else:
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "common.settings")
# This application object is used by any WSGI server configured to use this
# file. This includes Django's development server, if the WSGI_APPLICATION
# setting points here.
from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()