Browse files

[1.2.X] Fixed #5677 -- update modpython stdout documentation. Thanks …

…to Manfred Wassmann for the report, nickefford for the initial patch and Graham Dumpleton for the expert advice.

Backported of r14059 from trunk.

git-svn-id: bcc190cf-cafb-0310-a4f2-bffc1f526a37
  • Loading branch information...
1 parent fae5b04 commit 8fd9f2eb9f2706dc774ffbdea6bd172c83741e68 @DrMeers DrMeers committed Oct 9, 2010
Showing with 24 additions and 11 deletions.
  1. +24 −11 docs/howto/deployment/modpython.txt
@@ -2,6 +2,13 @@
How to use Django with Apache and mod_python
+.. warning::
+ Support for mod_python will be deprecated in a future release of Django. If
+ you are configuring a new deployment, you are strongly encouraged to
+ consider using :doc:`mod_wsgi </howto/deployment/modwsgi>` or any of the
+ other :doc:`supported backends </howto/deployment/index>`.
.. highlight:: apache
The `mod_python`_ module for Apache_ can be used to deploy Django to a
@@ -151,6 +158,8 @@ the full URL.
When deploying Django sites on mod_python, you'll need to restart Apache each
time you make changes to your Python code.
+.. _mod_python documentation:
Multiple Django installations on the same Apache
@@ -204,17 +213,25 @@ everything for each request. But don't do that on a production server, or we'll
revoke your Django privileges.
If you're the type of programmer who debugs using scattered ``print``
-statements, note that ``print`` statements have no effect in mod_python; they
-don't appear in the Apache log, as one might expect. If you have the need to
-print debugging information in a mod_python setup, either do this::
+statements, note that output to ``stdout`` will not appear in the Apache
+log and can even `cause response errors`_.
- assert False, the_value_i_want_to_see
+.. _cause response errors:
-Or add the debugging information to the template of your page.
+If you have the need to print debugging information in a mod_python setup, you
+have a few options. You can print to ``stderr`` explicitly, like so::
+ print >> sys.stderr, 'debug text'
+ sys.stderr.flush()
+(note that ``stderr`` is buffered, so calling ``flush`` is necessary if you wish
+debugging information to be displayed promptly.)
+A more compact approach is to use an assertion::
-.. _mod_python documentation:
+ assert False, 'debug text'
-.. _serving-media-files:
+Another alternative is to add debugging information to the template of your page.
Serving media files
@@ -267,10 +284,6 @@ the ``media`` subdirectory and any URL that ends with ``.jpg``, ``.gif`` or
.. _Apache:
.. _Cherokee:
-.. _howto-deployment-modpython-serving-the-admin-files:
-.. _serving-the-admin-files:
Serving the admin files

0 comments on commit 8fd9f2e

Please sign in to comment.