diff --git a/docs/docs/extras/deployment.rst b/docs/docs/extras/deployment.rst
index 2aa53c6..b2c19e8 100644
--- a/docs/docs/extras/deployment.rst
+++ b/docs/docs/extras/deployment.rst
@@ -98,28 +98,45 @@ To execute Isso, use a command similar to:
`mod_wsgi `__
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-First, create a startup script, called `isso.wsgi`. If Isso is in your system module
-search path, then the script is quite simple:
+First, create a startup script, called `isso.wsgi`. If Isso is in your system module
+search path, then the script is quite simple. This script is included in the
+isso distribution as `run.py`:
.. code-block:: python
+ from __future__ import unicode_literals
+
+ import os
+
from isso import make_app
- from isso.core import Config
+ from isso import dist, config
- application = make_app(Config.load("/path/to/isso.cfg"))
+ application = make_app(
+ config.load(
+ os.path.join(dist.location, dist.project_name, "defaults.ini"),
+ "/path/to/isso.cfg"),
+ multiprocessing=True)
If you have installed Isso in a virtual environment, then you will have to add the path
of the virtualenv to the site-specific paths of Python:
.. code-block:: python
-
+
+ from __future__ import unicode_literals
+
import site
site.addsitedir("/path/to/isso_virtualenv")
+ import os
+
from isso import make_app
- from isso.core import Config
+ from isso import dist, config
- application = make_app(Config.load("/path/to/isso.cfg"))
+ application = make_app(
+ config.load(
+ os.path.join(dist.location, dist.project_name, "defaults.ini"),
+ "/path/to/isso.cfg",
+ multiprocessing=True)
Using the aforementioned script will load system modules when available and modules
from the virtualenv otherwise. Should you want the opposite behavior, where modules from
@@ -127,32 +144,39 @@ the virtualenv have priority over system modules, the following script does the
.. code-block:: python
- import site
- import sys
+ from __future__ import unicode_literals
+
+ import os
+ import site
+ import sys
# Remember original sys.path.
- prev_sys_path = list(sys.path)
+ prev_sys_path = list(sys.path)
# Add the new site-packages directory.
site.addsitedir("/path/to/isso_virtualenv")
# Reorder sys.path so new directories at the front.
- new_sys_path = []
- for item in list(sys.path):
- if item not in prev_sys_path:
- new_sys_path.append(item)
- sys.path.remove(item)
- sys.path[:0] = new_sys_path
-
+ new_sys_path = []
+ for item in list(sys.path):
+ if item not in prev_sys_path:
+ new_sys_path.append(item)
+ sys.path.remove(item)
+ sys.path[:0] = new_sys_path
+
from isso import make_app
- from isso.core import Config
+ from isso import dist, config
- application = make_app(Config.load("/path/to/isso.cfg"))
+ application = make_app(
+ config.load(
+ os.path.join(dist.location, dist.project_name, "defaults.ini"),
+ "/path/to/isso.cfg",
+ multiprocessing=True)
-The last two scripts are based on those given by
+The last two scripts are based on those given by
`mod_wsgi documentation `_.
-The Apache configuration will then be similar to the following:
+The Apache configuration will then be similar to the following:
.. code-block:: apache
@@ -163,9 +187,9 @@ The Apache configuration will then be similar to the following:
WSGIScriptAlias /mounted_isso_path /path/to/isso.wsgi
-You will need to adjust the user and group according to your Apache installation and
+You will need to adjust the user and group according to your Apache installation and
security policy. Be also aware that the directory containing the comments database must
-be writable by the user or group running the WSGI daemon process: having a writable
+be writable by the user or group running the WSGI daemon process: having a writable
database only is not enough, since SQLite will need to create a lock file in the same
directory.