Nohost — это основанная на Whistle система для многопользовательской и многосредовой конфигурации, а также для отладки с перехватом пакетов. Она не только обладает всеми функциями Whistle, но и расширяет их, позволяя нескольким пользователям одновременно использовать её в различных средах. Система предназначена для развёртывания на общих серверах и использования сотрудниками всего отдела или компании.
Основные функции:
Перед установкой Nohost рекомендуется выполнить следующие шаги:
Для установки Nohost необходимо выполнить следующие действия:
npm i -g @nohost/server --registry=https://r.npm.taobao.org
.n2 start
.После установки можно перезапустить сервер командой n2 restart
или настроить его на работу с определённым доменом с помощью n2 restart -o nohost.imweb.io
. По умолчанию порт сервера равен 8080, но его можно изменить с помощью параметра -p
. Если команда не работает, проверьте, добавлен ли каталог с командами в переменную окружения PATH.
Чтобы остановить сервер, используйте команду n2 stop
. Для сброса администратора используйте n2 restart --reset
.
После успешного запуска сервера откройте страницу администратора (http://10.1.2.3:8080/admin.html#system/administrator) и войдите с именем пользователя admin и паролем 123456. Затем выполните следующие настройки:
-o www.xxx.com,www.yyy.com
).Обратите внимание, что настройка доменного имени должна быть завершена до начала работы с сервером.
Nohost действует как прокси-сервер, который можно настроить в браузере или через Nginx. Для удобства пользователей предлагаются различные варианты доступа:
@http://nohost.imweb.io:8080/whistle.nohost/cgi-bin/plugin-rules
.Конфигурация для мобильных устройств и аналогичных бэкэндов разработки.
Обычно Nohost развёртывается во внутренней сети компании, прямой доступ через интернет невозможен, требуется пересылка через слой доступа (например, Nginx).
После установки плагина или настройки прокси-сервера откройте соответствующую страницу (домен этих страниц должен быть загружен в сертификат, если нет, необходима дополнительная настройка, см. раздел «Настройка» ниже), вы увидите маленький кружок в левом нижнем углу страницы, нажмите на него, чтобы переключиться между средами:
Если в левом нижнем углу нет маленького кружка, обратитесь к разделу «Настройка».
В первый раз при открытии маленького кружка будет доступна только одна производственная среда, администратору необходимо добавить аккаунт:
После добавления аккаунта откройте отдельную страницу выбора среды http://nohost.imweb.io:8080
:
Личная страница аккаунта Изображение
Создав среду, вы можете настроить любые правила Whistle в среде, аналогично обычным локальным функциям Whistle и даже больше. Каждый экземпляр может создать сотни аккаунтов, каждый аккаунт может создать сотни сред, в зависимости от производительности вашей машины.
По умолчанию только запросы доменов, указанных в сертификате, будут пересылаться на разные аккаунты, а содержимое HTML будет автоматически внедрять маленький кружок, но в реальных приложениях вы можете столкнуться со следующими проблемами:
Некоторые домены касаются только HTTP-запросов, не затрагивают HTTPS-запросы или не могут получить сертификаты для чувствительных и сторонних доменов. Эти домены можно настроить в разделе «Конфигурация → Конфигурация входа»:
Правила входа имеют три вида (#xxx
обозначает комментарий):
pattern #переслать на Nohost, если это страница HTML, внедрить маленький кружок
-pattern #переслать на Nohost, не внедрять маленький кружок
--pattern #не пересылать на Nohost и не внедрять маленький кружок
x)-pattern #x — целое число (положительное, отрицательное или ноль), указывает на ручную настройку приоритета, по умолчанию 0
Шаблон соответствует: https://wproxy.org/whistle/pattern.html, порядок сопоставления сверху вниз, каждый запрос будет соответствовать одному из них, приоритет сертификата по умолчанию самый низкий, который можно установить с помощью 1)
.
Например:
ke.qq.com
-*.url.cn
--localhost.**
-1)**.qq.com
Означает:
ke.qq.com
будут переадресованы на Nohost, и все HTML будут внедрены с маленьким кружком.xxx.url.cn
будут переадресованы на Nohost без внедрения маленького кружка.localhost.xxx.yyy...
не будут переадресовываться на Nohost и не будут внедряться с маленьким кружком.qq.com
будут перенаправлены на Nohost, но не будут внедрять маленький кружок и установят приоритет -1
, чтобы гарантировать, что дочерние домены в сертификате могут нормально внедрять маленький кружок.Это основной процесс Whistle для Nohost, все запросы проходят через этот Whistle, и через плагин whistle.nohost этого процесса осуществляется управление аккаунтами и переадресация запросов. Основной процесс Whistle не может просматривать данные захвата пакетов в производственной среде, его можно использовать для настройки правил и управления глобальными плагинами, такими как блокировка некоторых запросов и т. д., более подробную информацию см. в последующих документах.
Более подробную информацию см. в документации: https://nohost.pro/
Настройка среды разработки:
git clone git@github.com:Tencent/nohost.git
# Переключитесь на ветку dev разработки
git checkout dev
# Установите зависимости
npm install
# Запустите сборку страницы
npm run dev
# Запуск Nohost
npm start
После изменения страницы необходимо обновить вручную.
Приглашаем всех присоединиться к группе общения Nohost. Учитывая, что срок действия QR-кода ограничен, пожалуйста, отсканируйте код, чтобы добавить друзей, подтвердите ответ «Nohost», и мы добавим вас в группу.
Если у вас есть хорошие идеи или предложения, добро пожаловать, чтобы подать Issues или Pull Requests, чтобы улучшить опыт отладки захвата пакетов. План поощрения разработчиков Tencent поощряет участие и вклад разработчиков и ждёт вашего участия.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )