tunnelhunt/laravel-tunnelhunt

A Laravel package to expose your local development server via tunnelhunt.ru.

Installs: 0

Dependents: 0

Suggesters: 0

Security: 0

Stars: 0

Watchers: 0

Forks: 0

Open Issues: 0

Type:laravel-package

pkg:composer/tunnelhunt/laravel-tunnelhunt

v0.0.1 2025-10-12 23:04 UTC

This package is auto-updated.

Last update: 2025-11-12 23:17:16 UTC


README

Latest Version on Packagist Total Downloads License: MIT

Этот пакет для Laravel предоставляет простую Artisan-команду для запуска вашего локального сервера разработки и одновременного создания к нему публичного туннеля с помощью сервиса tunnelhunt.ru.

Это идеальное решение, когда вам нужно:

  • Протестировать входящие вебхуки от внешних сервисов (Telegram, Stripe, и т.д.).
  • Показать результат работы заказчику без развертывания на реальном хостинге.
  • Отладить интеграцию с API, требующим публично доступного эндпоинта.

Требования

  • PHP >= 8.1
  • Laravel >= 10.0
  • Установленный в вашей системе SSH-клиент.

Установка

Вы можете установить пакет в ваш Laravel-проект с помощью Composer:

composer require tunnelhunt/laravel-tunnelhunt

Благодаря механизму автообнаружения пакетов в Laravel, вам не нужно вручную регистрировать Service Provider.

Использование

Базовый запуск

Для запуска локального сервера на порту 8000 и создания туннеля с бесплатным планом nokey выполните команду:

php artisan serve:tunnel

После запуска вы увидите примерно следующий вывод в консоли:

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.

// Здесь появится стандартный вывод от SSH-команды
// Внимательно посмотрите на него, там будет ваш публичный адрес
Your public URL is: http://a1b2c3d4.tunnelhunt.ru
// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
// Ваш сайт доступен по этому адресу!

Важно: Публичный URL генерируется сервисом tunnelhunt.ru и будет показан в выводе SSH-команды, как в примере выше.

Чтобы остановить сервер и туннель, просто нажмите Ctrl+C в окне терминала.

Опции

Вы можете кастомизировать команду с помощью следующих опций:

Опция По умолчанию Описание Пример
--host 127.0.0.1 Хост, на котором будет запущен локальный сервер. php artisan serve:tunnel --host=0.0.0.0
--port 8000 Порт, на котором будет запущен локальный сервер. php artisan serve:tunnel --port=3000
--plan nokey План tunnelhunt.ru для использования (nokey или pro). php artisan serve:tunnel --plan=pro

Пример с pro планом на порту 3000:

php artisan serve:tunnel --port=3000 --plan=pro

Как это работает?

Команда serve:tunnel автоматизирует следующие шаги:

  1. Запускает встроенный веб-сервер Laravel (php artisan serve) в фоновом режиме с указанными вами --host и --port.
  2. Формирует и выполняет команду ssh -R 80:localhost:<port> -p 2222 <plan>@tunnelhunt.ru.
  3. Передает весь вывод от SSH-процесса напрямую в вашу консоль, чтобы вы могли видеть статус подключения и назначенный URL.
  4. Когда вы прерываете команду (Ctrl+C), она корректно завершает как SSH-соединение, так и фоновый процесс php artisan serve.

Лицензия

Этот пакет является программным обеспечением с открытым исходным кодом, распространяемым под лицензией MIT.