
melancholiac
02.05.2017
16:36:08
а без uwsgi не обойтись?
мне всего лишь нужно отдавать файлы

Maxim robox
02.05.2017
16:36:35
В uwsgi нет ничего страшного.
Какой-то сервер всё равно нужен. uwsgi лучше всех дружит с nginx. Из альтернатив есть gunicorn.

Google

melancholiac
02.05.2017
16:38:11
я не сумел в настройку

Maxim robox
02.05.2017
16:38:44
Пробуй ещё.

melancholiac
02.05.2017
16:39:17
events{
worker_connections 1024;
}
http{
server {
listen 5000;
location / {
proxy_pass http://127.0.0.1;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
location /proxy_download/ {
alias /home/melancholiac/web-proj/yafr/files/;
}
}
}
это конфиг энджиникса
как мне в location / указать какой порт слушать?

Maxim robox
02.05.2017
16:40:23
uwsgi --socket :8000 --module your_wsgi_module.wsgi
В nginx добавить такое:
upstream uwsgi {
server backend:8000;
}

melancholiac
02.05.2017
16:40:49

Maxim robox
02.05.2017
16:41:07
В location:
location ~ ^/(api)/ {
uwsgi_pass uwsgi;
include /etc/nginx/uwsgi_params;
}
Ну это пример.

melancholiac
02.05.2017
16:41:46
отсутствие файла .sock
я после этого забил

Maxim robox
02.05.2017
16:42:03
https://github.com/nginx/nginx/blob/master/conf/uwsgi_params
Это файл uwsgi_params, к которому надо указывать путь.

Google

melancholiac
02.05.2017
16:43:18

Maxim robox
02.05.2017
16:43:33

melancholiac
02.05.2017
16:44:15

Maxim robox
02.05.2017
16:44:39

melancholiac
02.05.2017
16:45:09
так что мне снова то же самое делать?

Maxim robox
02.05.2017
16:45:38
Нет, делай правильно теперь.

melancholiac
02.05.2017
16:45:41
с uwsgi?

Maxim robox
02.05.2017
16:46:36

melancholiac
02.05.2017
16:55:56

Maxim robox
02.05.2017
16:57:04

melancholiac
02.05.2017
17:00:00
или нет?

Maxim robox
02.05.2017
17:00:08

melancholiac
02.05.2017
17:04:04
*** Operational MODE: single process ***
ModuleNotFoundError: No module named 'wsgi.py'; 'wsgi' is not a package
unable to load app 0 (mountpoint='') (callable not found or import error)
*** no app loaded. going in full dynamic mode ***
содержимое wsgi.py
from yafr.main import *
if __name__=='__main__':
app.run()

Roman
02.05.2017
17:04:46
'wsgi' is not a package

Maxim robox
02.05.2017
17:05:25

melancholiac
02.05.2017
17:08:56
uwsgi --socket :8000 --module wsgi
*** Operational MODE: single process ***
unable to load app 0 (mountpoint='') (callable not found or import error)
*** no app loaded. going in full dynamic mode ***
*** uWSGI is running in multiple interpreter mode ***

Rookie
02.05.2017
17:10:01
Почему я всегда считал, что интернет завален манами о nginx + установке и настройке?

Maxim robox
02.05.2017
17:10:13

Google

melancholiac
02.05.2017
17:10:24

Rookie
02.05.2017
17:10:30
А, и кстати, под дебиан есть даже sh скрипт.

melancholiac
02.05.2017
17:10:40
только либо я дурак...

Maxim robox
02.05.2017
17:10:41

Rookie
02.05.2017
17:10:46
Который "всё сделает за тебя"

melancholiac
02.05.2017
17:10:55
но у мне ни один не помог
с утра уже маны читаю

Rookie
02.05.2017
17:13:00
Уфффф. Загугли uwsgi-plugin-python
Там в пол пинка всё.

melancholiac
02.05.2017
17:13:43
ну вот примерно так я и провел день
за гуглением всего что в "пол пинка"

#3301⏣SoulString
02.05.2017
17:15:53

#3301⏣SoulString
02.05.2017
17:16:30
пример gunicorn -b 0.0.0.0 —reload -D имяфайла

melancholiac
02.05.2017
17:16:44
у меня сейчас крыша съедет, соре

Maxim robox
02.05.2017
17:16:45
С uwsgi nginx из коробки работает по его протоколу. А гуникорну ещё заголовки самому прокидывать.

#3301⏣SoulString
02.05.2017
17:17:02

melancholiac
02.05.2017
17:17:06
и все сигнализировали об ошибках

#3301⏣SoulString
02.05.2017
17:17:31
правда у меня OLS, там какой-то wsgi для lsapi поехавший
а юзать fcgi не хочется

Google

#3301⏣SoulString
02.05.2017
17:18:29
все работает идеально

melancholiac
02.05.2017
17:30:18
нужно было просто
application=app
я так догадываюсь application это в djano

Nikolay
02.05.2017
17:31:42
application - это стандартный объект в wsgi
джанго тут ни при чем

melancholiac
02.05.2017
17:44:11
как понять что nginx работает?
вроде запустил uwsgi

Nikolay
02.05.2017
17:44:35

Admin
ERROR: S client not available

melancholiac
02.05.2017
17:44:35
вот комманда
uwsgi --http-socket 127.0.0.1:3031 --wsgi-file wsgi.py --callable app --processes 4 --threads 2 --stats 127.0.0.1:9191

Octo@dshacks
02.05.2017
17:44:35
или
service nginx status

melancholiac
02.05.2017
17:44:42
ненене
он то работает
как понять что uwsgi его трагает?

Nikolay
02.05.2017
17:45:35
ну, если nginx отдает не 404 и не bad gateway - то работает все

melancholiac
02.05.2017
17:46:15
а как понять что нгинкс отдает?

Nikolay
02.05.2017
17:46:22

Google

melancholiac
02.05.2017
17:46:41
как?

Nikolay
02.05.2017
17:46:56
что значит как? браузер открой и сделай
либо curl/wget

melancholiac
02.05.2017
17:47:19
но в заголовках ничего нет

Nikolay
02.05.2017
17:47:50
тебе не на 3031 надо запрос делать, а на тот порт, на котором у тебя висит nginx

melancholiac
02.05.2017
17:47:51
т.е. раньше хоть писало что сервер фласковый встроенный

Nikolay
02.05.2017
17:47:57
который должен делать uwsgi_pass

melancholiac
02.05.2017
17:49:08
upstream prematurely closed connection while reading response header from upstream, client: 127.0.0.1, server: , request: "GET / HTTP/1.1", upstream: "uwsgi://127.0.0.1:3031", host: "127.0.0.1:4554"

Nikolay
02.05.2017
17:49:55
502
значит, ты неправильно настроил nginx

Octo@dshacks
02.05.2017
17:50:00
502
Значит неправильный конфиг
Щас скину который я юзаю
Если вспомню пароль от рута...
server {
listen 80;
listen [::]:80;
server_name vksave.octonezd.pw;
access_log /var/log/nginx/vkpls.acc.log;
location / {
proxy_pass http://127.0.0.1:8082;
}
}
Во

melancholiac
02.05.2017
17:53:03
upstream обязателен? что указывать в backend? какой порт?

Octo@dshacks
02.05.2017
17:53:23

melancholiac
02.05.2017
17:53:37

Octo@dshacks
02.05.2017
17:53:56
что есть uwsgi? я немног дебил

melancholiac
02.05.2017
17:54:09
;_;