summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--docs/INSTALL16
-rw-r--r--lib/apache2/patchwork.wsgi17
-rw-r--r--lib/apache2/patchwork.wsgi.conf20
l---------patchwork.wsgi1
4 files changed, 52 insertions, 2 deletions
diff --git a/docs/INSTALL b/docs/INSTALL
index 7a32434..82b6694 100644
--- a/docs/INSTALL
+++ b/docs/INSTALL
@@ -153,10 +153,22 @@ in brackets):
Example apache configuration files are in lib/apache/.
+wsgi:
+ django has built-in support for WSGI, which supersedes the fastcgi
+ handler. It is thus the preferred method to run patchwork.
+
+ The necessary configuration for Apache2 may be found in
+
+ lib/apache2/patchwork.wsgi.conf.
+
+ You will need to install/enable mod_wsgi for this to work:
+
+ a2enmod wsgi
+ apache2ctl restart
+
mod_python:
- This should be the simpler of the two to set up. An example apache
- configuration file is in:
+ An example apache configuration file for mod_python is in:
lib/apache/patchwork.mod_python.conf
diff --git a/lib/apache2/patchwork.wsgi b/lib/apache2/patchwork.wsgi
new file mode 100644
index 0000000..0488b48
--- /dev/null
+++ b/lib/apache2/patchwork.wsgi
@@ -0,0 +1,17 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+#
+# Apache2 WSGI handler for patchwork
+#
+# Copyright © 2010 martin f. krafft <madduck@madduck.net>
+# Released under the GNU General Public License v2 or later.
+#
+import os
+import sys
+
+basedir = os.path.dirname(__file__)
+sys.path.append(basedir)
+
+os.environ['DJANGO_SETTINGS_MODULE'] = 'apps.settings'
+import django.core.handlers.wsgi
+application = django.core.handlers.wsgi.WSGIHandler()
diff --git a/lib/apache2/patchwork.wsgi.conf b/lib/apache2/patchwork.wsgi.conf
new file mode 100644
index 0000000..e99f8c6
--- /dev/null
+++ b/lib/apache2/patchwork.wsgi.conf
@@ -0,0 +1,20 @@
+<IfModule mod_alias.c>
+ Alias /images/ "/srv/patchwork/htdocs/images/"
+ Alias /css/ "/srv/patchwork/htdocs/css/"
+ Alias /js/ "/srv/patchwork/htdocs/js/"
+ Alias /robots.txt "/srv/patchwork/htdocs/robots.txt"
+ <Directory "/srv/patchwork/htdocs">
+ Order allow,deny
+ Allow from all
+ </Directory>
+
+ Alias /media/ "/usr/share/python-support/python-django/django/contrib/admin/media/"
+
+ <Directory "/usr/share/python-support/python-django/django/contrib/admin/media/">
+ Order allow,deny
+ Allow from all
+ </Directory>
+</IfModule>
+
+WSGIScriptAlias / "/srv/patchwork/patchwork.wsgi"
+WSGIPassAuthorization On
diff --git a/patchwork.wsgi b/patchwork.wsgi
new file mode 120000
index 0000000..cf13d18
--- /dev/null
+++ b/patchwork.wsgi
@@ -0,0 +1 @@
+lib/apache2/patchwork.wsgi \ No newline at end of file