Output should looks like this.
- http://www.example.com/djangoapp1 django version 0.96
- http://www.example.com/djangoapp2 django version 1.0.2
Using Apache Server, with mod_python. Or any Server Technology, which recommend most.
I'm not sure it's possible to do this properly with mod_python. In the past I've seen a ton of cross thread/process leakage when trying this with mod_python. It might work better now using virtualenv but it's not worth it.
Technically it should be possible to do it with mod_python. If people do have problems as suggested by others, it is likely because they haven't setup how mod_python uses interpreters properly. Even if sub interpreters are setup properly so each Django instance is in their own, you can have issues though with timezone, language and locale settings because these are controlled through environment variables which are global to the process and not local to the sub interpreter. This has though got nothing to do with different versions of Django being used and could happen in any case where running multiple applications in an Apache process. The same issues come up with mod_wsgi in embedded mode as well. The safest approach is to use mod_wsgi daemon mode. This way each Django instance is in its own process and they can't interfere with each other.