How can I run two Django versions in the same server?
Solution 1:
You should definitely go with virtualenv.
This is how you can check if you already have virtualenv installed:
$ virtualenv --version
If you don't have virtualenv installed, you can install it like this:
$ pip install virtualenv
If that gives you an error, you probably don't have pip yet. You can install it using:
$ easy_install pip
Once virtualenv is installed you can create separated virtual Python environments, one per Django installation, like this:
$ virtualenv env
I recommend running this command in the project folder of each app. If you do so, you get a folder called 'env' which will contain the virtual Python environment. Every time you want to start working with the virtual environment you can issue this command:
$ source env/bin/activate
Your prompt should indicate that you are running the environment by looking something like this:
(env)$
You can leave the virtualenv by typing:
(env)$ deactivate
If you have come this far you can start installing environment-specific versions of Python packages like this (in an activated environment):
(env)$ pip install Django==1.0
This will install Django version 1.0 inside the current virtual environment. You can see if it worked by issuing:
(env)$ pip freeze
This should result in something like:
Django==1.0-final
wsgiref==0.1.2
You can now deactivate this environment, activate the other environment, and install Django 1.4 like this:
(env)$ pip install Django==1.4
Hope this helps!
Solution 2:
Have you read any of the available documentation, including:
http://code.google.com/p/modwsgi/wiki/VirtualEnvironments http://code.google.com/p/modwsgi/wiki/QuickConfigurationGuide#Delegation_To_Daemon_Process http://code.google.com/p/modwsgi/wiki/IntegrationWithDjango