Для понятности, давайте определимся:
- # домашняя директория — /home/vasia/
- # директория с сайтами — /home/vasia/sites/
- # папка сайта — /home/vasia/sites/mysite.com/
- # папка проекта django — /home/vasia/sites/mysite.com/mysite
Содержание
Установим необходимый софт
apt-get install nginx uwsgi uwsgi-plugin-python
Создадим nginx конфиг для нашего сайта
server { root /home/vasia/sites/first; index index.html index.htm; access_log /home/vasia/sites/logs/mysite_access.log; error_log /home/vasia/sites/logs/mysite_errors.log; server_name mysite.com; location / { include uwsgi_params; uwsgi_pass 127.0.0.1:8101; } location /static/ { root /home/vasia/sites/mysite.com; } location /media/ { root /home/vasia/sites/mysite.com; } }
Файл с конфигурацией uwsgi
В папке django-проекта создадим файл uwsgi.mysite.ini со следующим содержимым:
[uwsgi] socket = 127.0.0.1:8101 master = true module = django_wsgi pidfile = first.pid pythonpath = /home/mishko/sites/mysite.com virtualenv = .env plugins = python27 daemonize = /home/vasya/sites/logs/mysite_python.log
Там же создадим файл django_wsgi.py со следующим содержанием:
import os, sys sys.path.insert(0, os.path.abspath(os.path.join(os.path.dirname(__file__), '..'))) sys.path.insert(0, os.path.abspath(os.path.dirname(__file__))) os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings' import django.core.handlers.wsgi application = django.core.handlers.wsgi.WSGIHandler()
Запускаем сервисы
Вы будете удивлены, но все готово. Остались мелочи
# start nginx service nginx start # start uwsgi uwsgi --ini uwsgi.mysite.ini
Доброго. Сергей, а связаться как-то можно с вами, джанго обсудить?
Добрый день!
По Django лучше всего написать вопрос в комментарии. Я регулярно проверяю их и стараюсь отвечать на вопросы.
Если есть желание связаться со мной лично — можете сделать это через facebook: https://www.facebook.com/sharmazan