Развертываемая версия Ultraviolet, очень сложного прокси, используемого для уклонения от интернет-цензуры или доступа к веб-сайтам в контролируемой песочнице, используя мощность работников обслуживания и многое другое!
Установка ультрафиолета проста. Вы можете найти TL; DR процесса установки и настройки чуть ниже. Если вы не знакомы с «стандартным» процессом установки, посмотрите немного дальше для более полной установки и руководства по настройке.
$ git clone https://github.com/titaniumnetwork-dev/Ultraviolet-Node --recursive
$ cd Ultraviolet-Node
$ npm install
$ npm startЧтобы настроить на применение, сначала нажмите кнопку «Запустить на применении». После загрузки в свою реплику нажмите кнопку «Зеленая" запустить ". В качестве альтернативы запустите следующие команды:
$ npm install
$ chmod +x main.sh
$ ./main.sh Вам нужно будет запустить вторую команду только один раз. Это просто позволяет выполнять main.sh Запустив main.sh , вы обновите любые подмодули и запустите приложение.
Примечание . Если вы решите не использовать main.sh , но скорее просто запустите все команды вручную, обратите внимание, что вам придется вручную установить подмодули, используя git update submodules --init . Без него static не будет установлен, и это требуемый каталог.
Ниже описано всеобъемлющее руководство по установке ультрафиолетового на машинах Linux.
Чтобы клонировать репозиторий, просто запустите следующую команду:
$ git clone https://github.com/titaniumnetwork-dev/Ultraviolet-Node --recursive --recursive флаг будет клонировать репозиторий и все подмодули.
Чтобы начать работу над фактической настройкой, CD в репозиторий. Вы можете сделать это, выполнив следующую команду:
$ cd Ultraviolet-NodeОтсюда вы можете обновить свои подмодули и установить свои зависимости. Для этого запустите следующую команду:
$ npm installНаконец, чтобы начать ультрафиолетовое, запустите следующую команду:
$ npm start Затем вы можете найти ультрафиолет на http://127.0.0.1:8080 . Если вы хотите изменить порт UV, отредактируйте последнюю строку в index.mjs .
Обратите внимание, что UV не будет функционировать без HTTPS. Если вы разбираетесь в Repit или Heroku, это не будет проблемой, поскольку они предоставляют вам SSL/TLS по умолчанию и автоматически применяют его к вашему экземпляру, однако, если вы пытаетесь размещать УФ на другой платформе, например, на персональный сервер, вам необходимо использовать HTTPS.
Настройка ультрафиолета очень проста. Простые описания каждой настраиваемой опции предоставляются как комментарий в блоке ниже. Более подробную документацию можно найти чуть ниже упомянутого блока.
uv.config.js
self . __uv$config = {
prefix : '/sw/' , // Proxy url prefix
bare : '/bare/' , // Bare server location
encodeUrl : Ultraviolet . codec . xor . encode , // URL Encoding function
decodeUrl : Ultraviolet . codec . xor . decode , // Decode URL function
handler : '/uv.handler.js' , // Handler script
bundle : '/uv.bundle.js' , // Bundled script
config : '/uv.config.js' , // Configuration script
sw : '/uv.sw.js' , // Service Worker Script
} ;| Конфигурация | Варианты и объяснение |
|---|---|
| Префикс | Префикс - это префикс, который вы хотите, чтобы пользователи видели. Пример: https://example.com/service. Префикс по умолчанию - это service . |
| Голый | Голые серверы могут работать на каталогах. Например, если каталог был/голый/тогда голое происхождение будет выглядеть как http://example.org/bare/ . Голочное происхождение передается клиентам. |
| Encodeurl | Encodeurl - это то, как вы хотите, чтобы URL -адреса, посетители сайта прокси, должны быть закодированы. Варианты включают Ultraviolet.codec.base64.encode , Ultraviolet.codec.plain.encode , или Ultraviolet.codec.xor.encode . Рекомендуется использовать xor или base64 поскольку он скрывает запросы, которые ваши посетители ищут и посещают. |
| декодируется | DeCodeurl - это то, как вы хотите, чтобы URL был декодирован. Рекомендуется сохранить его таким же, как encodeUrl . |
| Обработчик | Хэндлер - это путь к ультрафиолетовому обработчику. Имя по умолчанию и путь к этому файлу static/uv/uv.handler.js . |
| Пучок | Пакет - это путь к файлу ультрафиолета. Имя по умолчанию и путь к этому файлу static/uv/uv.bundle.js . |
| Конфигурация | Конфигурация - это путь к файлу конфигурации UV. Имя по умолчанию и путь к этому файлу static/uv/uv.bundle.js . |
| Дольдо | SW - это путь к сценарию УФ -службы. Имя по умолчанию и путь к этому файлу static/uv/uv.sw.js . |
Статические файлы - это фронт для ультрафиолета. Отдельный репозиторий для его можно найти здесь.
Конфигурация упоминает несколько сценариев, которые составляют ультрафиолетовые. Чтобы получить документацию для того, что делает каждый из сценариев, ознакомьтесь с документацией для них в их отдельном хранилище.
Сценарии работников с клиентом и обслуживанием, необходимые для УФ-
uv.sw.js Service Worker Gateway Gatewayuv.sw-handler.js - Служба работникаuv.bundle.js Webpack Compilled Ultraviolet Перезаписьuv.handler.js Клиентская сторонаuv.config.js configuration