Как сделать локалхост публичным: ngrok
Во время разработки сайтов люди обычно работают у себя на компьютере, и запускают сайты локально. Ваша локальная сеть (127.0.0.1
) не доступна для людей извне, этот адрес доступен только с вашего компьютера.
Иногда это хочеся исправить: например, показать другу сайт, над которым вы работаете. В случае написания чатбота — это может быть создание локального вебхука.
Как пользоваться
- Регистрируетесь, скачиваете, устанавливаете и т.д. по инструкции отсюда.
- Узнайте на каком порту хостится ваш сайт/вебхук/что угодно.
Вот так в терминале выглядит запущенная Django:
August 14, 2019 - 18:37:46
Django version 2.2.4, using settings 'real_estate_agency.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
Здесь адрес сайта: 127.0.0.1:8000
, т.е. порт — 8000
.
Вот вывод Flask:
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
* Restarting with stat
* Debugger is active!
* Debugger PIN: 203-976-264
В этом случае адрес сайта: 127.0.0.1:5000
, т.е. порт — 5000
.
- Авторизуйтесь в ngrok с вашим токеном.
- ngrokните нужный порт:
./ngrok http ПОРТ
Вы получите такой вывод:
ngrok by @inconshreveable (Ctrl+C to quit)
Session Status online
Account Ilya (Plan: Free)
Version 2.3.34
Region United States (us)
Web Interface http://127.0.0.1:4040
Forwarding http://d51299bb.ngrok.io -> http://localhost:8000
Forwarding https://d51299bb.ngrok.io -> http://localhost:8000
Connections ttl opn rt1 rt5 p50 p90
0 0 0.00 0.00 0.00 0.00
Отсюда нужно выловить ngrok-адрес вашего сервиса. Вот он: http://d51299bb.ngrok.io -> http://localhost:8000
. Теперь достаточно перейти по ngrok-ссылке (http://d51299bb.ngrok.io
) и вы получите ваш сайт.
Если вы делаете вебхук, укажите этот сайт в качестве адреса вебхука.
Попробуйте бесплатные уроки по Python
Получите крутое код-ревью от практикующих программистов с разбором ошибок и рекомендациями, на что обратить внимание — бесплатно.
Переходите на страницу учебных модулей «Девмана» и выбирайте тему.