sudo apt-get install zlib1g zlib1g-dev zlibc libssl-dev  wget http://python.org/ftp/python/2.7.4/Python-2.7.4.tar.bz2 tar -xf Python-2.7.4.tar.bz2 cd Python-2.7.4 ./configure --prefix=/opt/python2.7/ --enable-unicode=ucs4 make && make install  wget http://python.org/ftp/python/3.3.1/Python-3.3.1.tar.bz2 tar -xf Python-3.3.1.tar.bz2 cd Python-3.3.1 ./configure --prefix=/opt/python3.3/ make && make install  apt-get install nginx-full include /etc/nginx/sites-enabled/*; add line include /home/hosting/.nginx/*.conf; server { server_name project1.com; access_log /var/log/project1.access.log; error_log /var/log/project1.error.log; location / { uwsgi_pass unix:/tmp/project1.sock; include /etc/nginx/uwsgi_params; } location /static/ { alias /home/hosting/project1/static/; } location /media/ { alias /home/hosting/project1/media/; } }  chown -R www-data:www-data /home/hosting/.nginx/  service nginx start  sudo apt-get install python-pip  pip install virtualenvwrapper  export WORKON_HOME=/home/hosting/.virtualenvs/ source /usr/local/bin/virtualenvwrapper.sh  mkvirtualenv project1 -p /opt/python2.7/bin/python deactivate mkvirtualenv project2 -p /opt/python3.3/bin/python3 deactivate  workon project1 cd /home/hosting/project1 pip install -r requirements.txt workon project2 cd /home/hosting/project2 pip install -r requirements.txt  mkvirtualenv python27 -p /opt/python2.7/bin/python deactivate mkvirtualenv python33 -p /opt/python3.3/bin/python3 deactivate  workon python27 pip install uwsgi workon python33 pip install uwsgi  mkdir /home/hosting/.uwsgi/python27 mkdir /home/hosting/.uwsgi/python33  [uwsgi] protocol = wsgi master = true processes = 1 #    socket = /tmp/project1.sock #   pythonpath   , . uwsgi         virtualenv pythonpath = /home/hosting/.virtualenvs/project1/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg pythonpath = /home/hosting/.virtualenvs/project1/lib/python27.zip pythonpath = /home/hosting/.virtualenvs/project1/lib/python2.7 pythonpath = /home/hosting/.virtualenvs/project1/lib/python2.7/plat-linux2 pythonpath = /home/hosting/.virtualenvs/project1/lib/python2.7/lib-tk pythonpath = /home/hosting/.virtualenvs/project1/lib/python2.7/lib-old pythonpath = /home/hosting/.virtualenvs/project1/lib/python2.7/lib-dynload pythonpath = /home/hosting/.virtualenvs/project1/lib/python2.7/site-packages # -  virtualenv     ,      pythonpath = /opt/python2.7/lib/python2.7 chdir = /home/hosting/project1 virtualenv = /home/hosting/.virtualenvs/project1 env = DJANGO_SETTINGS_MODULE=settings module = django.core.handlers.wsgi:WSGIHandler() no-site = true vhost = true chmod-socket = 666  description "uWSGI Emperor (python 2.7)" start on runlevel [2345] stop on runlevel [06] exec /home/hosting/.virtualenvs/python27/bin/uwsgi --master --emperor /home/hosting/.uwsgi/python27 --logto /var/log/uwsgi27.emperor.log  description "uWSGI Emperor (python 3.3)" start on runlevel [2345] stop on runlevel [06] exec /home/hosting/.virtualenvs/python33/bin/uwsgi --master --emperor /home/hosting/.uwsgi/python33/ --logto /var/log/uwsgi33.emperor.log  adduser --no-create-home --disabled-login --disabled-password www-project1 adduser --no-create-home --disabled-login --disabled-password www-project2  uid = www-project1 #  gid = www-project1 #   chown -R www-data:www-data /home/hosting/.nginx chmod -R 770 /home/hosting/.nginx chown -R root:root /home/hosting/.uwsgi chmod -R 770 /home/hosting/.uwsgi chown -R root:root /home/hosting/.virtualenvs/python27 /home/hosting/.virtualenvs/python33 chmod -R 775 /home/hosting/.virtualenvs chown -R www-project1:www-project1 /home/hosting/project1 /home/hosting/.virtualenvs/project1 chown -R www-project2:www-project2 /home/hosting/project2 /home/hosting/.virtualenvs/project2  service uwsgi27 start service uwsgi33 start WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x135e280 pid: 21737 (default app) in the uwsgi log.Source: https://habr.com/ru/post/179831/
All Articles