Laravel и TunnelHunt: Демонстрация локального сайта в одну команду
Больше не нужно разворачивать staging-сервер, чтобы протестировать вебхук или показать сайт заказчику. Узнайте, как команда `php artisan serve:tunnel` решает эту проблему за секунды.
Разработка на Laravel — это удовольствие. Фреймворк предоставляет элегантные решения для множества задач, а команда php artisan serve позволяет мгновенно запустить локальный сервер. Но есть одна проблема, с которой сталкивается каждый разработчик: ваш локальный сайт виден только вам.
Что делать, если нужно:
- Протестировать вебхук от Telegram, GitHub или любого другого внешнего сервиса?
- Показать фронтенд-разработчику работающее API?
- Быстро продемонстрировать результат заказчику, не тратя часы на деплой?
Стандартные решения — поднять staging-сервер, настроить CI/CD, возиться с DNS — требуют времени и сил. Но есть способ проще.
Сегодня мы представляем пакет, который глубоко интегрируется в экосистему Laravel и позволяет сделать локальный сайт публичным с помощью одной-единственной команды.
Проблема: php artisan serve работает только для вас
Команда php artisan serve запускает сервер на 127.0.0.1 (localhost). Этот адрес доступен только с вашего компьютера. Любой внешний сервис, пытающийся отправить запрос на http://127.0.0.1:8000, будет стучаться в свою собственную “дверь”, а не в вашу.
Чтобы принять входящий запрос извне, нужен публичный IP-адрес и открытый порт. TunnelHunt решает эту задачу, создавая безопасный туннель от нашего сервера до вашего локального приложения. А наш новый пакет делает этот процесс частью привычного Laravel-воркфлоу.
Сценарий: Тестируем вебхуки от Telegram-бота
Представим, вы разрабатываете Telegram-бота. Когда пользователь отправляет вашему боту сообщение или нажимает на кнопку, Telegram отправляет на ваш сервер POST-запрос (вебхук) с информацией об этом событии. Чтобы отладить логику бота, вам нужно дать Telegram публичный URL, который будет вести на ваше локальное приложение.
Шаг 1: Установка пакета
Если вы еще этого не сделали, установите наш пакет через Composer. Это займет меньше минуты.
composer require tunnelhunt/laravel-tunnelhunt
Пакет использует механизм автообнаружения Laravel, поэтому никакой дополнительной настройки не требуется. Новая команда сразу готова к работе.
Шаг 2: Запускаем туннель
Теперь, вместо php artisan serve, выполните в терминале новую команду:
php artisan serve:tunnel
Пакет сначала запустит локальный сервер в фоновом режиме, а затем немедленно инициирует SSH-соединение для создания туннеля.
Шаг 3: Получаем публичный URL
Через несколько секунд в вашей консоли появится вывод, содержащий самое главное — временный публичный адрес вашего сайта:
INFO Laravel development server started on http://127.0.0.1:8000
INFO Starting tunnelhunt.ru tunnel with 'nokey' plan...
INFO Waiting for tunnelhunt.ru to provide a public URL...
Your public URL will appear in the SSH output below.
Your public URL is: http://somename-adjective-1234.nokey.tunnelhunt.ru
Вот и все! Теперь адрес http://somename-adjective-1234.nokey.tunnelhunt.ru можно указать в настройках вашего бота через BotFather (командой /setwebhook).
Шаг 4: Отладка
Когда пользователь напишет вашему боту, Telegram отправит запрос на этот URL, а TunnelHunt перенаправит его на ваш локальный сервер. Вы увидите запрос в логах Laravel, сможете использовать dd() или отладчик Xdebug так, как будто запрос пришел с вашего же компьютера.
Когда закончите, просто нажмите Ctrl+C в терминале. Туннель закроется, и ваш сайт снова станет локальным.
Дополнительные опции
Пакет был бы неполным без возможности кастомизации.
- Запустить на другом порту:
php artisan serve:tunnel --port=3000 - Использовать Pro-аккаунт для фиксированного адреса:
php artisan serve:tunnel --plan=pro
Заключение
Интеграция TunnelHunt напрямую в Laravel Artisan — это наш способ сделать жизнь разработчиков еще немного проще. Теперь для решения повседневных задач, таких как отладка вебхуков или демонстрация работы, не нужно покидать привычную среду и тратить время на сложные настройки.
Этот подход идеально подходит для:
- Разработки чат-ботов
- API-эндпоинтов
- Тестирования OAuth-авторизации
- Демонстрации frontend-части, которая обращается к вашему локальному API
Просто, быстро и безопасно. Установите пакет и попробуйте сами.
Готовы запустить свой первый туннель?
Начните использовать TunnelHunt бесплатно уже сегодня и откройте доступ к локальному серверу всего одной командой.
Зарегистрироваться бесплатно →Последние публикации
Локальное тестирование вебхуков CloudPayments через TunnelHunt
22 июня 2026 г.
Пошаговый гайд по отладке уведомлений о платежах CloudPayments на localhost. Как настроить адреса уведомлений, пробросить туннель и верифицировать подпись HMAC-SHA256 в Python.
Настройка и отладка вебхуков Robokassa на локальном сервере
22 июня 2026 г.
Пошаговая инструкция по приему и верификации платежных уведомлений Robokassa на локальном компьютере с помощью TunnelHunt. Пример MD5-подписи на Python.
Локальное тестирование вебхуков Т-Банка (Т-Бизнес / Эквайринг) на localhost
22 июня 2026 г.
Пошаговый гайд по отладке платежных уведомлений эквайринга Т-Банка локально. Настройка адреса уведомлений, проброс через TunnelHunt и пример проверки подписи Token на Python.
Локальное тестирование вебхуков ЮKassa (YooKassa) через TunnelHunt
22 июня 2026 г.
Пошаговый гайд по настройке уведомлений ЮKassa (YooKassa) на локальном сервере. Как пробросить порт, прописать URL в личном кабинете и проверить цифровую подпись.