Как подключиться с мобильного телефона к localhost
Я разрабатываю сайт на Django, локальная версия запущена на сервере разработки (python manage.py runserver
) на localhost. Я могу протестировать свой сайт в браузере, адрес http://127.0.0.1:8000/.
Но теперь мне нужно посмотреть, как выглядит мой сайт на мобильном телефоне. ОС моего ноутбука - Linux Mint, ОС телефона - Android, оба подключены к WiFi-роутеру.
Я попробовал этот рецепт. Я узнал свой IP WLAN (командой ifconfig
), который оказался 192.168.0.104. По рецепту я должен ввести адрес вместе с номером порта, который, судя по всему, равен 8000 (согласно порту сервера разработки, см. пункт 1), поэтому я должен видеть свой локальный сайт по адресу 192.168.0.104:8000, как с ноутбука, так и из браузера телефона.
Однако на обоих устройствах я получаю следующую ошибку (переведено на английский):
Не удается установить соединение. Firefox не может установить соединение с сервером по адресу 192.168.0.104:8000. Сайт может быть временно недоступен или слишком занят. Пожалуйста, повторите попытку через несколько минут. Если вы не можете загрузить ни одной страницы, проверьте сетевое подключение вашего компьютера. Если ваш компьютер или сеть защищен брандмауэром или прокси-сервером, убедитесь, что Firefox имеет разрешение на доступ к Интернету.
С телефона ошибка выглядит следующим образом:
До этого сайта невозможно добраться. 192.168.0.104 отказался подключиться. Попробуйте: проверить соединение. ERR_CONNECTION_REFUSED
.
Из этого я делаю вывод, что
- адрес существует, но мое устройство не позволяет мне его увидеть;
- проблема не в телефоне, а где-то в ноутбуке.
Вот тут я и застрял. На мой взгляд, есть три возможные причины:
- Брандмауэр Linux. Я пытался отключить его, но результат был тот же;
- Настройки сервера. Здесь я теряюсь. Как я понимаю, я использую Django
runserver
. Но, что интересно, если я набираю на телефоне только IP без порта, то вижу Apache2 Default Page. Подозреваю, что на моем роутере может работать свой собственный Apache (?). - настройки роутера. Также я не знаю, где может быть проблема.
Пожалуйста, помогите мне с любыми идеями, как подключиться к localhost
с моего телефона. Пока что мне приходится загружать любое крошечное изменение на сервер развертывания и просматривать свой сайт с телефона через интернет, что очень медленно.
Вы можете использовать ngrok
для обслуживания вашего проекта. подключите ngrok
к вашему проекту port
и входите куда хотите. подробнее читайте docs
добавьте это 0.0.0.0:8000
к вашей команде runserver.
python manage.py runserver 0.0.0.0:8000
А сервер dev должен принимать внешние запросы.