<VirtualHost *>
    ServerName jmoiron.net
    ServerAlias jmoiron.net www.jmoiron.net
    ServerAdmin jmoiron@jmoiron.net
    
    DocumentRoot /var/www/jmoiron.net
    
    # set up user home directories to go to public_html w/ php support
    AliasMatch /~([^/]+)/?(.*) /home/$1/public_html/$2
    <Directory /home/*/public_html>
        AddHandler fcgid-script .php
        FCGIWrapper /usr/lib/cgi-bin/php5 .php
        IndexOptions FancyIndexing SuppressLastModified SuppressDescription
        Options ExecCGI Indexes -MultiViews +SymLinksIfOwnerMatch
        Order allow,deny
        Allow from all
    </Directory>

    WSGIDaemonProcess www user=jmoiron group=users threads=25
    WSGIProcessGroup www 

    Alias /media/ /var/www/jmoiron.net/web/media/
    Alias /awstats-icon/ /usr/share/awstats/icon/
    <Directory /usr/share/awstats/icon>
        Options None
        AllowOverride None
        Order allow,deny
        Allow from all
    </Directory>

    WSGIScriptAlias / /var/www/jmoiron.net/app.wsgi

    <Directory /var/www/jmoiron.net/>
        Order deny,allow
        Allow from all
    </Directory>

    LogLevel info
    CustomLog /var/log/apache2/jmoiron.net/access.log combined
    ErrorLog /var/log/apache2/jmoiron.net/error.log
</VirtualHost>

   1 #!/usr/bin/env python
   2 # :set ft=python
   3 
   4 """jmoiron.net deployment script;  references:
   5 
   6  * http://trac.mapfish.org/trac/mapfish/wiki/HowToMapFishServerApache
   7  * http://docs.djangoproject.com/en/dev/howto/deployment/modwsgi/
   8  * http://code.google.com/p/modwsgi/wiki/VirtualEnvironments
   9  * http://pypi.python.org/pypi/virtualenv
  10 
  11 """
  12 
  13 import sys
  14 import site
  15 import os
  16 
  17 STAGE=False
  18 
  19 if STAGE:
  20     vepath = '/home/jmoiron/.ve/jmoiron.net-stage/lib/python2.5/site-packages'
  21 else:
  22     vepath = '/home/jmoiron/.ve/jmoiron.net/lib/python2.5/site-packages'
  23 
  24 prev_sys_path = list(sys.path)
  25 site.addsitedir(vepath)
  26 sys.path.append('/home/jmoiron/jmoiron.net/')
  27 
  28 # reorder sys.path so new directories from the addsitedir show up first
  29 new_sys_path = [p for p in sys.path if p not in prev_sys_path]
  30 for item in new_sys_path:
  31     sys.path.remove(item)
  32 sys.path[:0] = new_sys_path
  33 
  34 # import from down here to pull in possible virtualenv django install
  35 from django.core.handlers.wsgi import WSGIHandler
  36 os.environ['DJANGO_SETTINGS_MODULE'] = 'web.settings'
  37 application = WSGIHandler()

ConfiguringWSGI (last edited 2009-10-16 00:50:51 by localhost)

Edit and actions menu

  • Immutable Page
  • Info
  • Attachments