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

Пошук і заміна ​

Пошук і заміна автоматично змінює трафік під час проходження через проксі без призупинення й ручних дій для кожного запиту.

Як працюють правила ​

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

Правила застосовуються за порядком у списку. Якщо два правила націлені на той самий заголовок, перше відповідне правило діє першим, а наступні бачать результат його зміни.

Поля правила ​

ПолеОпис
НазваНазва правила. Використовуйте описову назву, щоб позначити призначення.
НапрямокЗастосування до запитів, відповідей або обох
ОпераціяПеретворення для виконання (див. таблицю нижче)
Режим збігуБуквальний, регулярний вираз або повний вміст залежно від операції
Значення пошукуРядок або шаблон, який потрібно знайти
Значення заміниЗначення для підстановки
УвімкненоПеремикач активації й деактивації правила без видалення
ФільтриНеобов’язкові умови методу, хоста, шляху й HTTPQL, що обмежують застосування

Операції ​

ОпераціяЩо робить
Додати заголовокДодає новий заголовок із фіксованими назвою й значенням
Видалити заголовокВидаляє заголовок за назвою
Замінити заголовокЗамінює значення наявного заголовка
Замінити тілоЗамінює частину тіла за значенням пошуку
Шлях / параметри URL / параметр URLЗмінює шлях запиту або значення параметрів
Рядок запиту / відповідіЗмінює вибраний компонент початкового рядка HTTP
Код статусуЗмінює статус відповіді
Необроблене повідомленняПеретворює початковий рядок HTTP, заголовки й тіло разом
Дані WebSocketЗамінює відповідний вміст повідомлень клієнта або сервера
Робочий процесВиконує ввімкнений процес перетворення над вибраним вмістом

Режими збігу ​

Буквальний пошук зіставляє точний рядок. Використовуйте для фіксованих токенів, назв заголовків або певних значень.

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

У замінах за регулярними виразами використовуйте групи $1, $2 тощо для посилання на знайдені частини в значенні заміни.

Повна заміна передає весь вибраний вміст до перетворення замість пошуку підрядка. Деякі операції, як-от додавання або видалення іменованого заголовка, натомість використовують буквальну назву й не пропонують усіх режимів.

Перетворення повного тіла відповіді ​

  1. Створіть і ввімкніть процес типу Перетворити, потім перевірте його тестовими вхідними даними.
  2. Створіть правило пошуку й заміни з напрямком Відповідь та операцією Робочий процес (тіло).
  3. Виберіть режим збігу Повна заміна і робочий процес.
  4. Звузьте правило фільтром HTTPQL, наприклад:
text
req.host.eq:"cdn.example.com" AND (req.path.cont:".js" OR resp.headers["Content-Type"].value.cont:"javascript")

Процес отримує все тіло; його результат замінює це тіло. Робочий процес (заголовок) перетворює іменований заголовок, а Робочий процес (необроблені заголовки) — блок заголовків. Це інші вхідні дані, ніж тіло відповіді.

Фільтри HTTPQL перевіряються в доступному контексті запиту й відповіді. Правило для запиту не може покладатися на відповідь, що ще не надійшла. Вимикайте журналювання процесу, якщо правило створює багато запусків; тимчасово вмикайте для діагностики перетворення.

Зміна порядку правил ​

Перетягніть рядок правила на інше місце в списку. Порядок важливий, якщо правила змінюють частини одного запиту чи відповіді, що перетинаються.

Допомога ШІ ​

Натисніть Заповнити за допомогою ШІ в редакторі правила й опишіть звичайною мовою, що хочете змінити. Ogma створить поля правила за описом. Перевірте й скоригуйте згенеровані значення перед увімкненням.

Приклади вдалих запитів:

  • «Прибери заголовок X-Frame-Options з усіх відповідей»
  • «Заміни значення заголовка Authorization моїм тестовим токеном»
  • «Додай заголовок X-Debug зі значенням true до всіх запитів»

Перевірка правила ​

Перед увімкненням правила для реального трафіку перевірте його на прикладі запиту:

  1. Відкрийте редактор правила.
  2. Вставте HTTP-запит у необробленому текстовому форматі в розділі Панель перевірки.
  3. Натисніть Застосувати правила. Панель покаже результат і застосовані правила.
  4. Переконайтеся, що результат відповідає очікуванням.
  5. Увімкніть правило.

Панель тесту також має ціль Відповідь із полями статусу, заголовків і тіла. Перевіряйте список застосованих правил: тестуються відповідні правила, а не лише окреме поле редактора.

«Пошук і заміна» та «Перехоплення» ​

Пошук і заміна працює автоматично. Після ввімкнення правило перетворює кожен відповідний запит або відповідь без ваших дій.

Перехоплення призупиняє трафік і чекає ручного рішення. Використовуйте його, коли правильна зміна залежить від контексту окремого запиту. Пошук і заміна підходить, коли те саме перетворення має застосовуватися щоразу без перевірки.

Типові випадки використання ​

  • Замінити cookie сеансу в усіх запитах для перевірки іншого облікового запису.
  • Додати заголовок, що вмикає режим налагодження або адміністратора.
  • Прибрати захисні заголовки з відповідей для оцінки поведінки клієнта.
  • Замінити жорстко заданий хост у відповідях перенаправлення.
  • Переписати префікс шляху запиту.

Пропрієтарне програмне забезпечення. Усі права захищено.