Я получаю эту ошибку в моем nginx-error.log
файле:
2014/02/17 03:42:20 [crit] 5455#0: *1 connect() to unix:/tmp/uwsgi.sock failed (13: Permission denied) while connecting to upstream, client: xx.xx.x.xxx, server: localhost, request: "GET /users HTTP/1.1", upstream: "uwsgi://unix:/tmp/uwsgi.sock:", host: "EC2.amazonaws.com"
Браузер также показывает ошибку 502 Bad Gateway Error. Результат curl
такой же, Bad Gateway html
Я попытался исправить это, изменив разрешения для /tmp/uwsgi.sock
на 777. Это не сработало. Я также добавил себя в группу www-data
(это подсказывала пара похожих вопросов). Кроме того, никаких кубиков.
Вот мой nginx.conf
файл:
nginx.conf
worker_processes 1;
worker_rlimit_nofile 8192;
events {
worker_connections 3000;
}
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
#tcp_nopush on;
keepalive_timeout 65;
#gzip on;
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;
}
Я запускаю приложение Flask с Nginsx и Uwsgi, просто чтобы быть подробным в моем объяснении. Если у кого-то есть идеи, я был бы очень признателен.
ИЗМЕНИТЬ
Меня попросили предоставить мой файл конфигурации uwsgi. Итак, я лично никогда не писал свои файлы nginx или uwsgi. Я следовал руководству здесь, который настраивает все с помощью ansible-playbook. Файл nginx.conf
был создан автоматически, но в /etc/uwsgi
ничего не было, кроме файла README
в папках apps-enabled
и apps-available
. Нужно ли мне создавать собственный файл конфигурации для uwsgi? У меня создалось впечатление, что обо всем этом позаботился ансибл.
Я считаю, что ansible-playbook
разобрался с моей конфигурацией uwsgi с тех пор, как я запустил эту команду
uwsgi -s /tmp/uwsgi.sock -w my_app:app
он запускается и выводит это:
*** Starting uWSGI 2.0.1 (64bit) on [Mon Feb 17 20:03:08 2014] ***
compiled with version: 4.7.3 on 10 February 2014 18:26:16
os: Linux-3.11.0-15-generic #25-Ubuntu SMP Thu Jan 30 17:22:01 UTC 2014
nodename: ip-10-9-xxx-xxx
machine: x86_64
clock source: unix
detected number of CPU cores: 1
current working directory: /home/username/Project
detected binary path: /usr/local/bin/uwsgi
!!! no internal routing support, rebuild with pcre support !!!
*** WARNING: you are running uWSGI without its master process manager ***
your processes number limit is 4548
your memory page size is 4096 bytes
detected max file descriptor number: 1024
lock engine: pthread robust mutexes
thunder lock: disabled (you can enable it with --thunder-lock)
uwsgi socket 0 bound to UNIX address /tmp/uwsgi.sock fd 3
Python version: 2.7.5+ (default, Sep 19 2013, 13:52:09) [GCC 4.8.1]
*** Python threads support is disabled. You can enable it with --enable-threads ***
Python main interpreter initialized at 0x1f60260
your server socket listen backlog is limited to 100 connections
your mercy for graceful operations on workers is 60 seconds
mapped 72760 bytes (71 KB) for 1 cores
*** Operational MODE: single process ***
WSGI app 0 (mountpoint='') ready in 3 seconds on interpreter 0x1f60260 pid: 26790 (default app)
*** uWSGI is running in multiple interpreter mode ***
spawned uWSGI worker 1 (and the only) (pid: 26790, cores: 1)