1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/iteu-spike

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
README-zh_CN.md 5.8 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 30.11.2024 03:37 58feefc

Спайк — это быстрый обратный прокси, который позволяет сделать ваши внутренние сервисы доступными в интернете.

Он основан на 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

Полный список изменений доступен в файле CHANGELOG.md.

Лицензия

MIT лицензия. См. LICENSE. МИТ (https://opensource.org/licenses/MIT)

Опубликовать ( 0 )

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

1
https://api.gitlife.ru/oschina-mirror/iteu-spike.git
git@api.gitlife.ru:oschina-mirror/iteu-spike.git
oschina-mirror
iteu-spike
iteu-spike
master