Перейти до основного вмісту

Налаштування правил

На цій сторінці наведено детальну інформацію про кожне налаштування на екрані «Редагувати правило» у веб-додатку Redirect Web.

Опції

Тип

Визначте опцію Тип, щоб керувати тим, як додаток обробляє переспрямування. Ви можете вибрати один із наступних варіантів:

  • Original (За замовчуванням)
    • Використовує традиційні веб-API для керування переспрямуванням. Додатково використовує Tabs API як резервний варіант.
      • У Firefox використовується WebRequest API для обробки переспрямувань.
    • Ви можете використовувати всі опції, окрім Типів ресурсів та Методів запитів.
    • Цей тип повільніший, ніж Declarative, і може спричиняти додаткові мережеві запити.
  • DNR (Експериментально для Safari):
    • Цей тип працює значно швидше, ніж Original, оскільки він не ініціює мережевий запит для вихідної URL-адреси.
    • Дозволяє вказувати Типи ресурсів та Методи запитів.
    • ⚠️ Ви не можете використовувати деякі опції, такі як Обробка груп захоплення та Виключені шаблони URL, оскільки вони ще не підтримуються DNR API.
    • ⚠️ У Safari наразі ви не можете використовувати вертикальні риски (|) у шаблоні регулярного виразу. Деталі
    • ⚠️ Оскільки DNR API Safari все ще має деякі проблеми, ми вважаємо, що це все ще експериментальна функція для Safari. Список усіх відомих проблем можна знайти тут.

Переспрямувати з

Опція Переспрямувати з дозволяє вказати шаблон URL-адреси веб-сторінок, з яких ви бажаєте переспрямувати. Ви можете вибрати Wildcard або Регулярний вираз.

Наприклад, якщо ви вкажете https://example.com/* за допомогою Wildcard, це співпаде з https://example.com/ або https://example.com/hello.

примітка

В опції «Переспрямувати на» ви можете посилатися на весь збіг за допомогою $0 або на часткові збіги за допомогою $1, $2, ... Деталі дивіться в розділі Шаблон URL на цій сторінці.

Типи ресурсів

Supported Types: DNR

Опція Типи ресурсів дозволяє вказувати категорії веб-запитів, такі як зображення, JavaScript та таблиці стилів, до яких застосовується правило. Наприклад, якщо ви встановите script, ви зможете переспрямовувати файли JavaScript, завантажені веб-сторінками.

Наразі доступні такі типи: main_frame, sub_frame, stylesheet, script, image, font, xmlhttprequest, ping, media, websocket, other

Налаштування за замовчуванням – main_frame, що відповідає сторінці верхнього рівня, завантаженій у вкладку.

Будь ласка, перевірте деталі кожного типу ресурсу в mdn web docs.

Методи запитів

Supported Types: DNR

Опція Методи запитів дозволяє встановити цільові HTTP-методи вихідного URL.

За замовчуванням встановлені всі методи.

Будь ласка, перевірте деталі кожного методу в mdn web docs.

warning

У Safari ця опція може бути недоступною, оскільки реалізація Apple для типу DNR, схоже, наразі не обробляє її. Ми надіслали відгук до Apple як FB14502272.

Цільові браузери

Supported Platforms: macOS

Опція Цільові браузери дозволяє вказати, до якого браузера правило має або не має застосовуватися.

  • Ви можете вибрати 2 типи браузерів:
    • Браузери, які можна вибрати за замовчуванням: За замовчуванням можна вибрати Safari, Chrome, Firefox, Edge, Opera, Arc, Brave та Vivaldi. Це не розрізняє варіанти одного й того ж браузера, такі як Safari та Safari Technology Preview.
    • Визначені користувачем браузери: Натиснувши кнопку «Додати» на спливаючому вікні, ви можете вибрати будь-який браузер, окрім Safari або Safari Technology Preview, у якому встановлено розширення Redirect Web.
  • Прапорець Усі, крім вибраних дозволяє націлюватися на всі браузери, крім тих, що ви вибрали.
warning

Redirect Web не може розрізняти, чи є браузер Safari або Safari Technology Preview, оскільки додаток перевіряє батьківський процес розширення для його виявлення, але ці два браузери використовують один і той же батьківський процес (/sbin/launchd).

Переспрямувати на

Опція Переспрямувати на вказує цільову URL-адресу, на яку ви бажаєте переспрямувати з вихідної URL-адреси, що відповідає опції Переспрямувати з. Ви також можете замінити групи захоплення за допомогою $1, $2, ... або весь збіг за допомогою $0. Це допомагає вам динамічно вказувати місце призначення. Деталі дивіться в розділі Шаблон URL на цій сторінці.

Наприклад, якщо ви встановите таке правило:

  • Переспрямувати з: https://google.com/* (Wildcard)
  • Переспрямувати на: https://apple.com/$1

і воно співпадає з https://google.com/hello, тоді цільовою URL-адресою буде https://apple.com/hello.

Крім того, ви можете змінювати тексти $1, $2, ... перед виконанням замін. Деталі дивіться в розділі Обробка груп захоплення.

порада

Ви можете вказати власну схему URL для відкриття програми. Ось приклади програм, які підтримують глибокі посилання:

  • Figma: figma://file/Your_Figma_ID
  • Firefox: firefox://open-url?url=https://example.com/hello
  • Google Chrome: googlechromes://example.com
  • Microsoft Edge: microsoft-edge://example.com
  • Notion: notion://www.notion.so/Your_Note_ID
  • Slack: slack://open

Застосунок

Supported Types: Original Supported Platforms: macOS

Якщо ви бажаєте вказати програму, якою слід відкрити цільову URL-адресу, скористайтеся комбінованим списком Застосунок. Це доступно лише на macOS.

warning

Ви можете відкривати лише ті програми, які підтримують App Sandbox. Також переконайтеся, що програма підтримує відкриття URL-адреси, яку ви хочете відкрити.

Обробка груп захоплення

Supported Types: Original

Опція Обробка груп захоплення дозволяє вказати, як обробляти захоплені групи, які ви можете замінити в опції Переспрямувати на за допомогою $1, $2...

Ось як створювати групи захоплення:

  • Wildcard: Тексти, що відповідають * та ?, захоплюються автоматично.
  • Регулярний вираз: Тексти, що відповідають частині шаблону всередині (), захоплюються.

Ви можете вибрати один або кілька з наступних процесів:

  • URL Encode/Decode: Застосовує відсоткове кодування або декодування до групи захоплення. Наприклад, якщо ви кодуєте https://example.com/hello, воно перетворюється на https%3A%2F%2Fexample.com%2Fhello. Декодування працює у зворотному напрямку.
  • Base64 Encode/Decode: Декодує/кодує текст у Base64. Наприклад, ви можете закодувати hello в aGVsbG8=, а потім декодувати назад в hello.
  • Замінити входження: Замінює один або кілька символів у групі, що відповідають Цілі, на Заміну. Наприклад, якщо Групаhello, Цільl, а Замінаy, вона буде змінена на heyyo.
примітка

Це призначено для обробки кожної групи захоплення і не впливає на те, які URL-адреси виключаються за допомогою Виключених шаблонів URL. Наприклад, припустимо, у вас є таке правило:

  • Переспрямувати з: https://example.com/(hello.*)
  • Обробка груп захоплення:
    • Група: $1
    • Ціль: .* (Регулярний вираз)
    • Заміна: hello
  • Виключений шаблон URL: https://example.com/hello

У цьому випадку https://example.com/hello_world не буде виключено, тоді як https://example.com/hello буде виключено.

Виключені шаблони URL

Supported Types: Original

Опція Виключені шаблони URL дозволяє вказати URL-адреси, які не переспрямовуються. Це може бути корисно, щоб уникнути циклів переспрямування або виключити певні частини веб-сайту з переспрямування.

Ви можете вказати виключені шаблони URL, використовуючи типи шаблонів Regular Expression або Wildcard.

Приклади

Опція Приклади дозволяє перевірити ваше правило переспрямування, надаючи зразки URL-адрес. Додавши зразок URL, ви можете перевірити, чи працює правило, як очікувалося, перш ніж фактично його застосовувати.

Коментарі

Опція Коментарі дозволяє додавати будь-які нотатки або коментарі щодо вашого правила переспрямування. Це може бути корисним для відстеження того, чому ви створили певне правило, або для надання контексту для інших, хто може переглядати ваші правила.

Шаблон URL

Є 3 опції, де ви можете вказати один або кілька шаблонів URL. Переспрямувати з, Виключені шаблони URL та Обробка груп захоплення. Щоб їх вказати, ви можете вибрати Wildcard або Регулярний вираз.

Wildcard

Wildcard — це простіший тип шаблону, який дозволяє використовувати * (відповідає будь-чому) та ? (відповідає будь-якому одному символу) як символи підстановки. Ось кілька прикладів:

  • Щоб співставити https://example.com/hello, ви можете використати https://example.com/*. Це співставить будь-який рядок після https://example.com/.
  • Щоб співставити https://example.com/search?q=hello, ви можете використати https://example.com/search?q=*. Це співставить будь-яке значення для параметра q.
  • Щоб співставити будь-яку URL-адресу, яка містить слово blog, ви можете використати *blog*.

Ви також можете використовувати заміщення у Wildcard, що означає, що ви можете посилатися на частини співставленої URL-адреси за допомогою $1, $2 тощо. Наприклад, якщо ви використовуєте https://example.com/*-world-*, а URL-адреса https://example.com/hello-world-goodbye, тоді $1 буде "hello", а $2 буде "goodbye". $0 також доступний для посилання на всю співставлену URL-адресу.

[!Note] Хоча заміщення є функцією регулярних виразів, ви також можете використовувати його для Wildcard, оскільки Redirect Web внутрішньо перетворює Wildcard на регулярний вираз.

Регулярний вираз

Регулярний вираз (Regex) — це потужний інструмент для пошуку шаблонів у тексті, що працює на основі механізму регулярних виразів Apple, описаного тут. Він дозволяє визначити конкретний шаблон, який відповідає набору рядків. Ось кілька прикладів.

  • Щоб співставити https://example.com/hello, ви можете використати https://example.com/(.*). Це співставить будь-який рядок після https://example.com/ та збереже його в групі захоплення.
  • Щоб співставити https://example.com/search?q=hello, ви можете використати https://example.com/search\?q=(.*). Це співставить значення параметра q та збереже його в групі захоплення.
  • Щоб співставити будь-яку URL-адресу, яка містить слово blog, ви можете використати .*blog.*.

Ви можете посилатися на групи захоплення в Redirect To або Replacement за допомогою $1, $2, ... або $0 для посилання на весь збіг.

Більше інформації про синтаксис Regex можна знайти в таких ресурсах, як RegExr.