Я следовал приведенным здесь инструкциям для запуска Django с помощью встроенного веб-сервера и смог успешно запустить его с помощью python manage.py runserver
. Если я получаю доступ к 127.0.0.1:port локально с веб-сервера, я получаю страницу Django, указывающую, что она работает.
Я понимаю, что веб-сервер Django не является рабочим сервером, но для целей тестирования мне важно иметь доступ к нему из внешнего мира - то есть не через веб-браузер на сервере, а с другого компьютера.
Я попытался:
http://mywebserver:port_django_runs_on
но это не сработало. Я также попытался использовать IP вместо (на основе ifconfig) для доступа:
http://myipaddress:port_django_runs_on
который тоже не работал.
Веб-сервер работает, поэтому он должен быть доступен снаружи, я просто не знаю как. Я использую Linux с Apache, хотя я не настроил Django с Apache.
Есть идеи, как это сделать?
Ответы:
Вы должны запустить сервер разработки таким образом, чтобы он прослушивал интерфейс вашей сети.
Например
прослушивает на каждом интерфейсе порт 8000.
Неважно, заходите ли вы на веб-сервер с IP-адресом или именем хоста. Я предполагаю, что вы все еще в своей локальной сети.
Если вы действительно хотите получить доступ к серверу извне, вам также необходимо настроить маршрутизатор для переадресации порта, например,
8000
на ваш сервер.Проверьте брандмауэр на сервере, разрешены ли входящие соединения с используемым портом!
Предполагая, что вы можете получить доступ к вашему серверу Apache извне, вы также можете попробовать это:
80
освободить порт .sudo python manage.py runserver 0.0.0.0:80
источник
sudo python manage.py runserver 80
.ALLOWED_HOSTS = ['*']
работать на меня, чтобы получить доступ к приложению Django на Mac с моего телефона AndroidМне пришлось добавить эту строку в settings.py, чтобы она работала (в противном случае при доступе с другого компьютера была ошибка)
затем запустил сервер с:
Также убедитесь, что брандмауэр разрешает подключения к этому порту
источник
Выберите один или несколько из:
Таким образом, вы можете проверить, что ваше приложение успешно прослушивает, запустив
lsof -i
от имени пользователя root и найтиpython
запись с соответствующим портом, который вы указали.Пользователи без полномочий root обычно не могут связываться с портами <1024.
Вам нужно будет посмотреть,
iptables -nvL
есть ли правило, запрещающее доступ к ip: порту, к которому вы пытаетесь привязать ваше приложение.Если есть вышестоящий межсетевой экран, и вы не знаете о нем много, вам нужно поговорить с сетевыми администраторами.
источник
you haven't configured it successfully
?django runserver
слушатель действительно прослушивает, где вы его собираетесь, например, используетеlsof
.lsof
я вижу запись Python для моего порта. Но моя ссылка т.е. myip: 8000 не отвечает. Я знаю, что уже поздно, но любые предложения помогут.просто сделай это:
с помощью приведенной выше команды вы фактически привязываете его к внешнему IP-адресу. так что теперь, когда вы получите доступ к своему IP-адресу с помощью номера порта, вы сможете без проблем получить к нему доступ в браузере.
просто введите следующее в адресной строке браузера:
например:
вам, возможно, придется отредактировать файл settings.py, добавив следующее в файл settings.py в последней строке:
надеюсь, это поможет ...
источник
Для пользователей AWS.
Мне пришлось использовать следующие шаги, чтобы добраться туда.
1) Убедитесь, что pip и django установлены на уровне sudo
2) Убедитесь, что внутренние правила группы безопасности включают http на порт 80 для 0.0.0.0/0.
3) Добавить общедоступные IP-адреса и DNS для ALLOWED_HOSTS
4) Запустите сервер разработки с sudo на порту 80
Сайт теперь доступен по одному из следующих вариантов (не нужно: 80, так как это по умолчанию для http):
источник
Я собираюсь добавить это здесь:
sudo python manage.py runserver 80
Перейдите к своему телефону или компьютеру и введите внутренний IP-адрес вашего компьютера (например
192.168.0.12
) в браузер.На этом этапе вы должны быть подключены к серверу Django.
Это также должно работать без sudo:
источник
Если вы используете Docker, вам необходимо убедиться, что порты также открыты
источник
ОБНОВЛЕНО 2020 ПОПРОБУЙТЕ ЭТОТ ПУТЬ
источник