Как мне запустить проект Django Gunicorn?

Как мне запустить проект Django Gunicorn?

У меня есть проект Django, который работал на сервере разработки, и я пытаюсь перенести его на производственный сервер Ubuntu. Я запустил, с очевидным успехом, "python manage.py run_gunicorn 0.0.0.0:8000", но мои попытки подключиться к нему через обычный браузер указали наhttp://JonathansCorner.com:8000/истекает время ожидания. (Когда я вручную запускаю «telnet localhost 8000» и даю запрос GET, он выводит соответствующий HTML.) UFW отключен.

Что можно сделать, чтобы Gunicorn был доступен на порту 80 извне?

решение1

Хочу предложить вам три вещи для размышления:

Во-первых, что касается вашего брандмауэра, похоже, выделатьесть какой-то брандмауэр, так как порт 8000 «фильтруется»:

~ nmap jonathanscorner.com -p 8000

Starting Nmap 6.40 ( http://nmap.org ) at 2014-01-14 09:53 CST
Nmap scan report for jonathanscorner.com (54.218.143.2)
Host is up (0.10s latency).
rDNS record for 54.218.143.2: ec2-54-218-143-2.us-west-2.compute.amazonaws.com
PORT     STATE    SERVICE
8000/tcp filtered http-alt

Во-вторых, похоже, что это работает на EC2? В таком случае вам нужно будет изменить свою группу безопасности, чтобы разрешить этот трафик.

В-третьих, обычно не очень хорошая идея — выставлять gunicorn напоказ. Пусть gunicorn слушает localhost:8000(как и вы), а затем используйте надлежащий веб-сервер для проксирования запросов к gunicorn.

Например, установите nginx и получитеэтопрослушивать порт 80, а затем передавать запросы через прокси-сервер на gunicorn localhost:8000.

Связанный контент