7

I guess my main problem is that i don't know, how file hierarchy should look like ? So far i was following Grinberg's tutorial in his "Flask development" book. So i have like:

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

and not sure what all i messed up, but now when i try whatever with uwsgi command , it says following error :

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: starting it like this worked:

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

this worked ... in manage.py i had line: app=create_app('default') so that was pretty much all i guess i needed to do...

but i still cant get anyhow get rid of warning above... that i am running uwsgi without its master process manager... is it OK ? or have i done wrong something?

this is just created /etc/nginx/nginx.conf file

    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;

    }
}

}

waTEXmelon
  • 215
  • 1
  • 3
  • 11
  • Do you have uwsgi and nginx configuration file ? – rezakamalifard Mar 07 '15 at 13:53
  • not sure what exactly u mean but i alrdy make it work somehow.... i edited question... i did like 1000 tutorials and 100000 changes so maybe i made along the way some config file lol ... totally chaos for me – waTEXmelon Mar 07 '15 at 14:45

1 Answers1

19

This is probably related to how you installed uwsgi. This warning:

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

has nothing to do with your application, it is about your uwsgi binary.

Basically it says that one part of uwsgi has not been enabled in the binary that you are using. That specific functionality is not needed to run your Flask application, so you can ignore the warning. But if you want to learn more, see this question for some information about this problem and how to solve it.

Now, regarding this other warning:

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

I think you are missing the --master option, to enable the prefork server.

Community
  • 1
  • 1
Miguel Grinberg
  • 65,299
  • 14
  • 133
  • 152
  • 1
    btw is my nginx and uwsgi connected together? i mean i start uwsgi with uwsgi --http :8080 -w manage:app --enable-threads --master but what should i do with nginx then? like i start it with `nginx` and then i try `nginx -s reload` , but nothing seems to be happening, and in documentation they write ", the master process starts new worker processes and sends messages to old worker processes, requesting them to shut down" So i guess i should see some messages by uwsgi, which i dont see... right? – waTEXmelon Mar 09 '15 at 10:18
  • 1
    simply what i am asking how should nginx.conf look like and with which arguments i should uwsgi start, so that they work together? i cant get it done right... u can see my .conf at the original post – waTEXmelon Mar 09 '15 at 11:18
  • 1
    --master did the work for me now I don't see the warning any more. – H S Rathore Jun 18 '18 at 10:50