nginx перестал работать (13: отклоненное Разрешение) uwsgi (502 недопустимых шлюза)

Я испытываю затруднения при запуске моего приложения на новой капельке DigitalOcean. Машина выполняет CentOS 6.5

Мой /etc/nginx/nginx.conf

user  nginx www-data;
worker_processes  1;

error_log  /var/log/nginx/error.log;
#error_log  /var/log/nginx/error.log  notice;
#error_log  /var/log/nginx/error.log  info;

pid        /var/run/nginx.pid;
(continues)

Мой myapp_nginx.conf

server {

   server_name 104.xxx.x.xxx;
    listen      8080;
    charset     utf-8;
    client_max_body_size 30M;

    location / {
        index index.html index.htm;
        root /home/webdev/mydevelopment/git/ers_portal;
        try_files $uri @app;
    }

    location /static {
    alias /home/webdev/mydevelopment/git/ers_portal/app/static;
    }

    location @app {
        include uwsgi_params;
        uwsgi_pass unix:/home/webdev/mydevelopment/git/ers_portal_uwsgi.sock;
    }
}

Мой myapp_uwsgi.ini

[uwsgi]
master = true
#user info
uid = webdev
gid = www-data

#application's base folder
base = /home/webdev/mydevelopment/git/ers_portal

#chdir to this folder when starting
#chdir = /home/webdev/mydevelopment/git/ers_portal

#python module to import
app = run_web
module = %(app)

home = /home/webdev/mydevelopment/venvs/ecodev_do
pythonpath = %(base)

#socket file's location
socket = /home/webdev/mydevelopment/git/ers_portal/%n.sock

#permissions for the socket file
chmod-socket    = 666

#the variable that holds a flask application inside the module imported at line #6
#uwsgi varible only, does not relate to your flask application
callable = app

#location of log files
logto = /home/webdev/mydevelopment/git/ers_portal/logs/%n.log

Сообщения об ошибках распечатаны в nginx error.log каждый раз, когда я делаю веб-запрос к 104.xxx.x.xxx:8080

2014/11/19 23:14:47 [crit] 28090#0: *1 stat() "/home/webdev/mydevelopment/git/ers_portal/favicon.ico" failed (13: Permission denied), client: 71.211.xxx.xxx, server: 104.xxx.x.xxx, request: "GET /favicon.ico HTTP/1.1", host: "104.xxx.x.xxx:8080"
2014/11/19 23:14:47 [crit] 28090#0: *1 connect() to unix:/home/webdev/mydevelopment/git/ers_portal_uwsgi.sock failed (13: Permission denied) while connecting to upstream, client: 71.211.xxx.xxx, server: 104.xxx.x.xxx, request: "GET /favicon.ico HTTP/1.1", upstream: "uwsgi://unix:/home/webdev/mydevelopment/git/ers_portal_uwsgi.sock:", host: "104.xxx.x.xxx:8080"

папка проекта: drwxr-xr-x 6 webdev www-data 4.0K Nov 19 23:40 ers_portal

сокет в той папке: srw-rw-rw- 1 webdev www-data 0 Nov 19 23:45 ers_portal_uwsgi.sock

Если у Вас есть какая-либо дополнительная информация, Вы должны просто сообщить мне.Спасибо!!

Править

Я изменил полномочия, как предложено @Eugene. Теперь в моем /var/log/nginx/access.log Ясно

[20/Nov/2014:01:37:58 -0500] "GET / HTTP/1.1" 502 574 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.153 Safari/537.36" "-"

В /var/log/nginx/error.log Ясно

2014/11/20 01:38:27 [crit] 28639#0: *1 connect() to unix:/home/webdev/mydevelopment/git/ers_portal_uwsgi.sock failed (2: No such file or directory) while connecting to upstream, client: 71.21.my.local.ip, server: , request: "GET / HTTP/1.1", upstream: "uwsgi://unix:/home/webdev/mydevelopment/git/ers_portal_uwsgi.sock:", host: "104.ser.ver.ip"

favicon.ico отклонение (ниже) этого было в var/log/nginx/access.log не обнаруживается больше

"GET /favicon.ico HTTP/1.1" 502 574 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.153 Safari/537.36" "-"
3
задан 20 November 2014 в 08:54
3 ответа

Решено

Я обнаружил свою опечатку после многих часов поиска. В /path/to/my/webapp/my_app_nginx.conf строка, которая читает

location @app {
        include uwsgi_params;
        uwsgi_pass unix:/home/webdev/mydevelopment/git/ers_portal_uwsgi.sock;
    }

, должна читать

location @app {
        include uwsgi_params;
        uwsgi_pass unix:/home/webdev/mydevelopment/git/ers_portal/ers_portal_uwsgi.sock;
    }

Также в /etc/nginx/nginx.conf измените пользователь nginx www-data; назад к пользователь nginx;

Также убедитесь, что в «верхнем уровне» /etc/nginx/nginx.conf нет блока сервера по умолчанию , который конфликтует с конфигурацией вашего приложения (в моем случае /path/to/my/webapp/my_app_nginx.conf , который символически связан с /etc/nginx/conf.d/ папка).

Извлеченные уроки ...

  1. Не расстраивайтесь. Худшее (возможно, второе худшее) чувство в мире - это неспособность что-то понять в течение длительного периода времени. Особенно, если это ваше хобби, вы можете легко почувствовать, что вы некомпетентны, что это слишком сложно, и что вы недостаточно хороши.
  2. Будьте методичны. Я сходил с ума от перемен, особенно в конце. В результате вы ложитесь спать без особого прогресса и просыпаетесь в том же месте, где были. Запишите все это, задокументируйте, что вы пробовали, и отслеживайте предыдущие изменения. если ABABA - это рабочая конфигурация, а --- B- - это изменение, которое вы искали, но забыли изменить - B - назад на - A - , вы будете повторять, повторять и повторять себя. См. №1
  3. Помните, что иногда самое важное для решения проблемы - это встать и уйти.
  4. Не сбрасывайте со счетов знания своих коллег (этого сообщества). Хотя у них может не быть мгновенного ответа на вашу конкретную проблему, помните Все мы не такие тупые, как никто из нас (или какие-то подобные глупые высказывания). У всех нас есть глубинная любовь к устранению проблем с планеты, по одной за раз.
6
ответ дан 3 December 2019 в 05:12

Похоже, у вас нет необходимых разрешений где-то на пути к / home / webdev / mydevelopment / git / ers_portal - хотя ers_portal кажется чтобы иметь правильный 755, в некоторых каталогах его нет. Убедитесь, что во всех каталогах, начиная с / до ers_portal , есть не менее 5 каталогов для пользователя www-data, его группы или для всех.

1
ответ дан 3 December 2019 в 05:12

Я думаю, проблема в строке

 try_files $uri @app;

. Просто прокомментируйте ее и перезапустите сервер nginx. Это должно решить проблему.

0
ответ дан 3 December 2019 в 05:12

Теги

Похожие вопросы