title: Running multiple uwsgi python versions
body: <p>I'm trying to deploy django with uwsgi, and I think I lack understanding of how it all works. I have uwsgi running in emperor mode, and I'm trying to get the vassals to run in their own virtualenvs, with a different python version.</p>
  
  <p>The emperor configuration:</p>
  
  <pre><code>[uwsgi]
  socket = /run/uwsgi/uwsgi.socket
  pidfile = /run/uwsgi/uwsgi.pid
  emperor = /etc/uwsgi.d
  emperor-tyrant = true
  master = true
  autoload = true
  log-date = true
  logto = /var/log/uwsgi/uwsgi-emperor.log
  </code></pre>
  
  <p>And the vassal:</p>
  
  <pre><code>uid=django
  gid=django
  virtualenv=/home/django/sites/mysite/venv/bin
  chdir=/home/django/sites/mysite/site
  module=mysite.uwsgi:application
  socket=/tmp/uwsgi_mysite.sock
  master=True
  </code></pre>
  
  <p>I'm seeing the following error in the emperor log:</p>
  
  <pre><code>Traceback (most recent call last):
    File "./mysite/uwsgi.py", line 11, in &lt;module&gt;
      import site
  ImportError: No module named site
  </code></pre>
  
  <p>The virtualenv for my site is created as a python 3.4 pyvenv. The uwsgi is the system uwsgi (python2.6). I was under the impression that the emperor could be any python version, as the vassal would be launched with its own python and environment, launched by the master process. I now think this is wrong.</p>
  
  <p>What I'd like to be doing is running the uwsgi master process with the system python, but the various vassals (applications) with their own python and their own libraries. Is this possible? Or am I going to have to run multiple emperors if I want to run multiple pythons? Kinda defeats the purpose of having virtual environments.</p>