2015-03-07 2 views
3

Я полагаю, что моя главная проблема заключается в том, что я не знаю, как должна выглядеть файловая иерархия? До сих пор я следовал учебнику Гринберга в его книге «Разработка фляшек». Так у меня есть как:Как запустить uwsgi с флягой и nginx

--manage.py (Flask's Script extension script) 
--app/ (application folder as a package) 
--virtual_env 

и не уверен, что все, что я испортил, но теперь, когда я пытаюсь все, что с uwsgi команды, он говорит следующее сообщение об ошибке:

current working directory: /home/gaucan/temp/my_app 
detected binary path: /usr/bin/uwsgi 
!!! no internal routing support, rebuild with pcre support !!! 
*** WARNING: you are running uWSGI without its master process manager *** 

EDIT: запустить его, как это работал:

uwsgi --http :9090 -w manage:app --enable-threads

это работало ... в manage.py я имел строку: app=create_app('default') , так что это было почти все, я думаю, мне нужно было сделать ...

но я все еще не могу как-нибудь избавиться от предупреждения выше ... что я запускаю uwsgi без его главного менеджера процессов ... это нормально ? или я сделал что-то неправильно?

это только что созданный файл /etc/nginx/nginx.conf

worker_processes 1; 

events { 

    worker_connections 1024; 

} 

http { 

sendfile on; 

gzip    on; 
gzip_http_version 1.0; 
gzip_proxied  any; 
gzip_min_length 500; 
gzip_disable  "MSIE [1-6]\."; 
gzip_types  text/plain text/xml text/css 
        text/comma-separated-values 
        text/javascript 
        application/x-javascript 
        application/atom+xml; 

# Configuration containing list of application servers 
upstream uwsgicluster { 

    server 127.0.0.1:8080; 
    # server 127.0.0.1:8081; 
    # .. 
    # . 

} 

# Configuration for Nginx 
server { 

    # Running port 
    listen 80; 

    # Settings to by-pass for static files 
    location ^~ /static/ { 

     # Example: 
     # root /full/path/to/application/static/file/dir; 
     root /app/static/; 

    } 

    # Serve a static file (ex. favico) outside static dir. 
    location = /favico.ico { 

     root /app/favico.ico; 

    } 

    # Proxying connections to application servers 
    location/{ 

     include   uwsgi_params; 
     uwsgi_pass   uwsgicluster; 

     proxy_redirect  off; 
     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-Host $server_name; 

    } 
} 

}

+0

У вас есть конфигурационный файл uwsgi и nginx? – itmard

+0

не уверен, что именно означает u, но я alrdy заставляю его работать как-то .... я отредактировал вопрос ... мне понравилось 1000 уроков и 100000 изменений, поэтому, возможно, я сделал так, как некоторые файлы конфигурации lol ... полностью хаос для меня – waTEXmelon

ответ

8

Это, вероятно, связано с тем, как вы установили uwsgi. Это предупреждение:

!!! no internal routing support, rebuild with pcre support !!! 

не имеет никакого отношения к вашему приложению, это касается вашего двоичного файла uwsgi.

В основном это говорит о том, что одна часть uwsgi не включена в двоичном формате, который вы используете. Эта конкретная функциональность не нужна для запуска приложения Flask, поэтому вы можете игнорировать это предупреждение. Но если вы хотите узнать больше, см. this question для получения информации об этой проблеме и способах ее решения.

Теперь, что касается этого другого предупреждения:

*** WARNING: you are running uWSGI without its master process manager *** 

Я думаю, что вам не хватает опции --master, чтобы включить сервер PreFork.

+0

Кстати, мой nginx и uwsgi связаны вместе? я имею в виду, что я запускаю uwsgi с uwsgi --http: 8080 -w управлять: app --enable-threads --master, но что мне делать с nginx? например, я начинаю его с 'nginx', а затем я пытаюсь« nginx -s reload », но ничего не происходит, и в документации они пишут», мастер-процесс запускает новые рабочие процессы и отправляет сообщения старым рабочим процессам, запрашивая их для закрытия " Так что я думаю, я должен увидеть некоторые сообщения от uwsgi, которые я не вижу ... правильно? – waTEXmelon

+0

Просто я спрашиваю, как должен выглядеть nginx.conf и с какими аргументами я должен запускать uwsgi, чтобы они работали вместе? я не могу сделать это правильно ... ты можешь видеть мой .conf в исходном сообщении – waTEXmelon

Смежные вопросы