Я пытаюсь запустить свой проект django на экземпляре aws ec2. Я использую gunicorn с nginx, и я не совсем уверен, как мне решить эту проблему. Я уже потратил на это пару часов, включая просмотр других сообщений на этом сайте ... но я все еще застрял. Вот что не так: наряду с 502 Bad Gateway, мои журналы ошибок nginx продолжают возвращать мне это:
2015/07/17 08:32:32 [error] 8049#0: *18 connect() failed (111: Connection refused) while connecting to upstream, client: ip.ip.ip.ip, server: ip.ip.ip.ip, request: "GET / HTTP/1.1", upstream: "http://127.0.0.1:8001/", host: "ec2-numbers.us-west-1.compute.amazonaws.com"
Мой /etc/nginx/sites-available/at_api.conf
выглядит так (отступы на этом в порядке?):
server {
listen 80;
server_name ip.ip.ip.ip;
access_log /var/log/nginx/site_access.log;
error_log /var/log/nginx/site_error.log;
location /static/ {
alias /home/ubuntu/static/;
}
location / {
proxy_pass http://127.0.0.1:8001;
proxy_set_header X-Forwarded-Host $server_name;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
}
}
Это мой первый раз, когда я настраиваю свой проект django на ec2 ... поэтому я не совсем уверен, правильный ли это способ делать это. Какие-нибудь советы? p.s. Я видел другой похожий пост, в котором говорилось, что php-fpm
не был настроен должным образом, но я использую django, поэтому я не использую php.
Изменить: Мой at_api/gunicorn.conf.py
proc_name = "at_api"
bind = '127.0.0.1:8001'
loglevel = "error"
workers = 2
Изменить 2: Netstat
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN -
tcp 0 0 127.0.0.1:5432 0.0.0.0:* LISTEN -
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 8463/nginx: worker
tcp6 0 0 :::22 :::* LISTEN -
udp 0 0 0.0.0.0:68 0.0.0.0:* -
udp 0 0 0.0.0.0:10524 0.0.0.0:* -
udp6 0 0 :::21956 :::* -
Active UNIX domain sockets (only servers)
Proto RefCnt Flags Type State I-Node PID/Program name Path
unix 2 [ ACC ] STREAM LISTENING 8754 - /var/run/dbus/system_bus_socket
unix 2 [ ACC ] STREAM LISTENING 52566 - /var/run/supervisor.sock.8446
unix 2 [ ACC ] STREAM LISTENING 6691 - @/com/ubuntu/upstart
unix 2 [ ACC ] STREAM LISTENING 9075 - /var/run/acpid.socket
unix 2 [ ACC ] STREAM LISTENING 35450 - /var/run/postgresql/.s.PGSQL.5432
unix 2 [ ACC ] SEQPACKET LISTENING 14550 - /run/udev/control
Connection refused
означает, что ваш gunicorn
программное обеспечение не слушает 8001
порт, который вы настроили в своем nginx. Вы должны проверить свой gunicorn
конфигурация.