diff --git a/docs/howto/deployment/modpython.txt b/docs/howto/deployment/modpython.txt index d35cac8fcd..3e413f9bce 100644 --- a/docs/howto/deployment/modpython.txt +++ b/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 ` or any of the + other :doc:`supported backends `. + .. 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: http://modpython.org/live/current/doc-html/directives.html + 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: http://blog.dscpl.com.au/2009/04/wsgi-and-printing-to-standard-output.html -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: http://modpython.org/live/current/doc-html/directives.html + 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: http://httpd.apache.org/ .. _Cherokee: http://www.cherokee-project.com/ -.. _howto-deployment-modpython-serving-the-admin-files: - -.. _serving-the-admin-files: - Serving the admin files =======================