diff --git a/config/pets-clone--nginx.conf b/config/pets-clone--nginx.conf index 93f8b5e..5ed652b 100644 --- a/config/pets-clone--nginx.conf +++ b/config/pets-clone--nginx.conf @@ -5,11 +5,11 @@ # Для каждого сайта надо настроить свой поток, со своим уникальным именем. # Если будете настраивать несколько python (django) сайтов - измените название upstream -upstream clone-pets { +upstream pet-clone { # расположение файла Unix-сокет для взаимодействие с uwsgi - server unix:///home//home/web/clone.cocorico.ru/socket/clone-pets.sock; + server unix:///home/web/clone.cocorico.ru/socket/clone_pets.sock; # также можно использовать веб-сокет (порт) для взаимодействие с uwsgi. Но это медленнее - # server 127.0.0.1:8001; # для взаимодействия с uwsgi через веб-порт 8001 + # server 127.0.0.1:8021; # для взаимодействия с uwsgi через веб-порт 8021 } # конфигурируем сервер @@ -58,10 +58,16 @@ server { } location / { - uwsgi_pass clone-pets; # upstream обрабатывающий обращений - include uwsgi_params; # конфигурационный файл uwsgi; - uwsgi_read_timeout 1800; # вдруг некоторые запросы очень долго обрабатываются? - uwsgi_send_timeout 200; # на всякий случай время записи в сокет тоже побольше... +# uwsgi_pass pet-clone; # upstream обрабатывающий обращений +# # uwsgi_pass 127.0.0.1:8001; # upstream обрабатывающий обращений +# include uwsgi_params; # конфигурационный файл uwsgi; +# uwsgi_read_timeout 1800; # вдруг некоторые запросы очень долго обрабатываются? +# uwsgi_send_timeout 200; # на всякий случай время записи в сокет тоже побольше... + proxy_pass http://127.0.0.1:8080; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; } } diff --git a/config/pets-clone--uwsgi.ini b/config/pets-clone--uwsgi.ini new file mode 100644 index 0000000..6e7bc04 --- /dev/null +++ b/config/pets-clone--uwsgi.ini @@ -0,0 +1,64 @@ +# === Конфикурационный файл uwsgi pets-clone--uwsgi.ini === +[uwsgi] + +# НАСТРОЙКИ ДЛЯ DJANGO +# Корневая папка проекта (полный путь) +chdir: /home/web/clone.cocorico.ru/rosmorport_tsts +# Django wsgi файл rosmorport_tsts/wsgi.py записываем так: +module: rosmorport_tsts.wsgi +# полный путь к виртуальному окружению +home: /home/web/clone.cocorico.ru/env +# полный путь к файлу сокета +# route: ^/websocket 127.0.0.1:8021 +socket: unix:///home/web/clone.cocorico.ru/socket/clone_pets.sock +# Исходящие сообщения в лог +daemonize: /home/web/clone.cocorico.ru/logs/clone-pets-uwsgi.log + +# ЗАГАДОЧНЫЕ НАСТРОЙКИ, ПО ИДЕЕ ОНИ НУЖНЫ, НО И БЕЗ НИХ ВСЁ РАБОТАЕТ +# расположение wsgi.py +# wsgi-file: /home/web/clone.cocorico.ru/rosmorport_tsts/rosmorport_tsts/wsgi.py +# расположение виртуального окружения (как оно работает если этот параметр не указан, не ясно) +virtualenv: /home/web/clone.cocorico.ru/env +# имя файла при изменении которого происходит авторестарт приложения +# (когда этого параметра нет, то гичего не авторестартится, но с ним все рестартится. +# Cтоит изменить любой Python-исходник проекта, как изменения сразу вступают в силу. +touch-reload: /home/web/clone.cocorico.ru/logs/touchreload.txt +py-autoreload: 5 + +# НАСТРОЙКИ ОБЩИЕ +# быть master-процессом +master: true +# максимальное количество процессов +processes: 1 +# если uWSGI устнаовлен как сервис через apt-get то нужно установить еще плугин: +# sudo apt-get install uwsgi-plugin-python3 +# и добавить в этот конфиг: plugin: python3 +plugin: python3 + # права доступа к файлу сокета. По умолчанию должно хватать 664. Но каких-то прав не хватает, поэтому 666. +chmod-socket: 777 +# очищать окружение от служебных файлов uwsgi по завершению +vacuum: true +# количество секунд после которых подвисший процес будет перезапущен +# Так как некоторе скрипты требуют изрядно времени (особенно полная переиндексация) то ставим значение побольще +harakiri: 2600 +# В общем случае, при некотых значениях harakiri логах uWSGI может вываливаться предупреждение: +# WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers +# можно оставить harakiri закоментированным, но нам нужно 900 и на него не ругается. Ругается на 30. + +# разрешаем многопоточность +enable-threads: true +vacuum: true +thunder-lock: true +max-requests: 500 + +# пользователь и группа пользователей от имени которых запускать uWSGI +# указываем www-data: к этой группе относится nginх, и ранее мы включили в эту группу нашего [user] +# uid : nginx +# gid : nginx +# uid : www-data +# gid : www-data +uid: web +gid: web + + +print: ---------------- Запущен uWSGI ----------------