Спайк — это быстрый обратный прокси, который позволяет сделать ваши внутренние сервисы доступными в интернете.
Он основан на ReactPHP и использует модель мультиплексирования ввода-вывода.
Спайк можно установить через Composer:
composer global require slince/spike
Эту команду нужно выполнить как на сервере, так и на локальном компьютере.
На рисунке ниже представлена схема работы Спайка:
Чтобы использовать Спайк, вам понадобится компьютер с доступом в интернет. Предположим, что у вас уже есть такой компьютер. Вы можете запустить сервер двумя способами:
На основе стандартных параметров:
Выполните следующую команду, чтобы запустить базовый сервис:
$ spiked --address=127.0.0.1:8088
— Создайте файл конфигурации с помощью команды:
$ spiked init --dir=/home/conf --format=json
Вы можете использовать файлы конфигурации в формате YAML, XML, INI или JSON. По умолчанию используется JSON. Чтобы получить помощь по команде инициализации, выполните:
$ spiked init -h
— Откройте файл конфигурации и настройте параметры.
— Запустите сервер с файлом конфигурации:
$ spiked --config=/home/conf/spiked.json
Для запуска клиента также необходимо создать файл конфигурации. Выполните следующие шаги:
$ spike init --dir=/home/conf --format=json
Используйте команду spike init -h
, чтобы получить помощь.
$ spike --config=/home/conf/spike.json
Определение туннеля происходит только на клиенте, сервер не требует дополнительной настройки. В настоящее время поддерживаются HTTP и TCP туннели.
HTTP туннель: Откройте файл конфигурации клиента «spike.json» и добавьте HTTP туннель:
{
"protocol": "http",
"serverPort": 8086,
"proxyHosts": {
"www.foo.com": "127.0.0.1:80",
"www.bar.com": "192.168.1.101:8080"
}
}
Запустите клиент и перейдите по адресу «http://www.foo.com:8086». Сервер будет перенаправлять запросы на «127.0.0.1:80». Обратите внимание, что «www.foo.com» должен быть разрешён на сервере.
TCP туннель: TCP туннель может использоваться для проксирования приложений на уровне TCP, таких как MySQL, Redis, SSH и т. д. Пример проксирования MySQL:
{
"protocol": "tcp",
"serverPort": 8087,
"host": "127.0.0.1:3306"
}
Чтобы подключиться к локальному MySQL серверу, выполните команду:
mysql -h 服务器地址 -P 8087
Если вы хотите включить аутентификацию на сервере, то необходимо использовать файл конфигурации для запуска сервера.
Откройте файл «spiked.json», измените информацию в разделе «auth» и перезапустите сервер. В данный момент поддерживается только простая аутентификация по имени пользователя и паролю.
В файле «spike.json» на клиенте измените информацию в разделе «auth», чтобы она соответствовала информации на сервере.
По умолчанию включены вывод на экран и запись в файл. Уровень журнала по умолчанию — «info». Эту настройку можно изменить в разделе «log» файла конфигурации.
Команда spike list
отображает все доступные команды.
Полный список изменений доступен в файле CHANGELOG.md.
MIT лицензия. См. LICENSE. МИТ (https://opensource.org/licenses/MIT)
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )