Из Интернета на локальный сервер с помощью ngrok
ngrok — это инструмент, который позволяет вам создать безопасный туннель от общедоступного URL-адреса до локального сервера на вашем компьютере. Таким образом, вы можете получить доступ к своему локальному хосту из любого места.
Допустим, вам срочно нужно подготовить демо-версию веб-сайта для клиента или коллеги на другом конце света. Или, возможно, вы разрабатываете какие-то внешние приложения с веб-перехватчиками. В обоих случаях вам понадобится общедоступный URL-адрес. Вы можете загрузить свое приложение на размещенный сервер, но будете ли вы повторно загружать каждое небольшое изменение, чтобы иметь возможность что-то протестировать? При локальной разработке такой процесс может сильно раздражать. Здесь на помощь приходит ngrok.
Быстрый старт
Первоначальная подготовка ngrok очень проста и в основном состоит из трех шагов:
1) Установка
Просто скачайте и разархивируйте архив с приложением. Приложение представляет собой один файл. В Linux убедитесь, что файл является исполняемым. Вы можете убедиться с помощью команды:
Совет: в Linux вы можете либо переместить файл приложения в каталог
Добавьте
/bin или его местоположение в переменную $PATH, чтобы файл приложения всегда был исполняемым через командную строку с помощью команды «ngrok». В OS X или Windows процедура должна быть аналогичной.
2) Запустить
Чтобы запустить туннель для стандартного веб-сервера (HTTP на порту 80), просто введите команду:
Это все. Впоследствии появится окно с обзором, где генерируются новый общедоступный URL-адрес туннеля и локальный адрес панели управления.
Информационная панель содержит обзор трафика, проходящего через туннель, и конфигурацию ngrok. В то же время у него есть очень полезная функция Replay, которая повторяет уже сделанный запрос.
3) Регистрация (необязательно)
Зарегистрировавшись, вы получаете более длительный срок действия туннеля, обзор туннелей на панели инструментов на странице dashboard.ngrok.com, туннели TCP и другие преимущества.Однако для базового использования можно обойтись и без регистрации.
После регистрации вам необходимо подключить локальный клиент к вашей учетной записи с помощью токена. Токен доступен в личном кабинете, а подключение к клиенту будет происходить командой:
Виртуальный хост
Если приложение на локальном сервере работает как виртуальный хост, локальный веб-сервер использует заголовок хоста, чтобы определить, какое приложение отображать. В этом случае необходимо указать Host :
при создании туннеля
Доступ под паролем
Доступ к туннелю можно защитить именем и паролем, добавив параметр -auth. Затем туннель защищается с помощью HTTP BasicAuth :
Платные функции и что дальше?
ngrok практически бесплатен. Однако он также предлагает платные функции, такие как настраиваемые поддомены, файлы конфигурации для нескольких туннелей одновременно, протокол TLS или белый список IP-адресов. Прежде всего, возможность собственного поддомена очень практична. Это позволяет избежать смены домена в настройках веб-перехватчика каждый раз при создании нового туннеля.
В целом, это очень практичный инструмент, особенно для локальной разработки и тестирования с использованием сторонних веб-перехватчиков или API с ограниченным URL-адресом. Это бесценный сервис. В этой статье даже не упоминаются все варианты, которые предлагает ngrok. Поэтому, если вы хотите прочитать больше, я рекомендую официальную документацию.
Если у вас есть какие-либо вопросы или советы по поводу ngrok, сообщите нам об этом в комментариях!