- Хост
- gw.prokso.com
- Порт
- 823 HTTP · 824 SOCKS5 — новий IP на кожен запит · 10000–20000 фіксований IP (sticky-сесія), HTTP(S) і SOCKS5
- Логін і пароль
- у кабінеті, на сторінці плану
Готові рядки у потрібному форматі генерує кабінет: оберіть країну, тип IP і протокол.
- Хост — gw.prokso.com, порти 823 (HTTP), 824 (SOCKS5), 10000–20000 (фіксований IP, HTTP або SOCKS5)
- Логін і пароль — у кабінеті на сторінці плану
- Перевіряйте IP у відповіді самого запиту через проксі: сторінка «Мій IP» у браузері ваш скрипт не перевіряє
Покрокова інструкція, як підключити проксі Prokso в n8n. Займе кілька хвилин.
Крок 1. Візьміть дані проксі в особистому кабінеті
Відкрийте план і скопіюйте хост gw.prokso.com, порт, логін і пароль. Порт 823 — HTTP, 824 — SOCKS5 (обидва дають новий IP на кожен запит); порти 10000–20000 — фіксований IP (sticky-сесія) до 120 хвилин, працюють і як HTTP, і як SOCKS5 (кожен порт — окрема адреса). Країну задають у логіні: логін__cr.ua.
Крок 2. Додайте опцію Proxy у вузлі HTTP Request
Відкрийте workflow, додайте вузол HTTP Request і задайте метод та адресу сторінки, як зазвичай. У параметрах вузла натисніть Add Option і оберіть Proxy — з'явиться поле для адреси проксі.
Крок 3. Впишіть адресу проксі з логіном
У поле Proxy вставте http://ЛОГІН:ПАРОЛЬ@gw.prokso.com:823 — логін і пароль візьміть із генератора в кабінеті. Поле приймає лише адреси, що починаються з http:// або https://, тож SOCKS5 на порту 824 тут не підійде: працюйте через 823 або фіксований порт 10000–20000. Проксі діє тільки для цього вузла, інші вузли HTTP Request налаштовуються окремо.
Крок 4. Задайте темп і таймаут
Якщо у вузол приходить багато елементів, на кожен іде окремий запит, і на порту 823 кожен отримує нову адресу. Щоб не засипати сайт запитами, додайте опцію Batching: Items per Batch — скільки запитів у пачці, Batch Interval — пауза між пачками в мілісекундах. Опція Timeout задає, скільки мілісекунд чекати на відповідь.
Крок 5. Проксі для всього n8n на власному сервері
Якщо n8n встановлено на вашому сервері, проксі можна задати один раз змінними середовища: HTTP_PROXY для http-сайтів, HTTPS_PROXY для https-сайтів, ALL_PROXY — запасний варіант для обох. Тоді через проксі піде весь HTTP-трафік від вузлів. Опція Proxy у вузлі має вищий пріоритет за ці змінні. Нижче — запуск у Docker; після зміни змінних контейнер треба перезапустити.
docker volume create n8n_data
docker run -it --rm \
--name n8n \
-p 5678:5678 \
-e HTTP_PROXY=http://ЛОГІН:ПАРОЛЬ@gw.prokso.com:823 \
-e HTTPS_PROXY=http://ЛОГІН:ПАРОЛЬ@gw.prokso.com:823 \
-e NO_PROXY=localhost,127.0.0.1 \
-v n8n_data:/home/node/.n8n \
n8nio/n8nКрок 6. Виключіть адреси, яким проксі не потрібен
У змінну NO_PROXY через кому впишіть хости, до яких n8n має ходити напряму, — наприклад, ваші внутрішні сервіси. Так вони не витрачатимуть трафік плану. Зверніть увагу: n8n читає ці змінні через пакет proxy-from-env, і варіант малими літерами (http_proxy) важливіший за великі (HTTP_PROXY), якщо в системі задано обидва.
Крок 7. Перевірте IP у workflow
Зберіть пробний workflow: вузол Manual Trigger і за ним HTTP Request з методом GET на https://api.ipify.org?format=json та налаштованим проксі. Запустіть workflow вручну й подивіться на вивід вузла: поле ip має містити адресу проксі, а не вашого сервера. Помилка 407 означає неправильний логін або пароль чи вичерпаний трафік на плані. Сторінка «Мій IP» у браузері тут не допоможе: запит робить сервер n8n, а не браузер.
Країна і IP для кожного item через вираз у полі Proxy
Як і інші параметри вузла, поле Proxy можна перемкнути в режим Expression. Тоді кожен item виходить через свою країну і свій порт. Покладіть адресу сторінки, код країни і порт у вхідні дані, наприклад із вузла Set чи таблиці:
[
{ "url": "https://example.de/catalog", "country": "de", "port": 10001 },
{ "url": "https://example.pl/catalog", "country": "pl", "port": 10002 },
{ "url": "https://example.com/catalog", "country": "us", "port": 823 }
]У полі URL напишіть {{ $json.url }}, а в полі Proxy:
http://ЛОГІН__cr.{{ $json.country }}:ПАРОЛЬ@gw.prokso.com:{{ $json.port }}Items із фіксованим портом 10000–20000 тримають один IP стільки, скільки задано в кабінеті, і кожен порт — окрема адреса. Items із портом 823 отримують новий IP на кожен запит. Країна нічого не коштує додатково, тож в одному запуску можна змішувати кілька країн.
Коли вузол HTTP Request в n8n падає
n8n перетворює мережеві та HTTP-помилки на короткі повідомлення. Ось що вони зазвичай означають, коли запит іде через проксі:
- «The connection timed out, consider setting the 'Retry on Fail' option in the node settings». Проксі чи сайт не відповіли вчасно. Збільште опцію Timeout і ввімкніть Retry On Fail (див. нижче).
- «The connection cannot be established, this usually occurs due to an incorrect host (domain) value». Помилка в написанні
gw.prokso.comчи адреси сторінки, або в контейнері не працює DNS. - «The service refused the connection - perhaps it is offline». За цією адресою ніхто не прийняв з'єднання. Перевірте порт у полі Proxy: 823 або 10000–20000.
- «Forbidden - perhaps check your credentials?». n8n показує це для будь-якого 403, але через проксі це майже завжди відмова сайту, а не ваші облікові дані в n8n. Неправильний пароль проксі дає 407.
- «The service is receiving too many requests from you». Це 429 від сайту. Збільште Batch Interval і зменште Items per Batch.
Retry On Fail без подвійної оплати трафіку
На вкладці Settings вузла опція Retry On Fail запускає вузол знову після помилки. Max. Tries — кількість спроб (n8n приймає від 2 до 5, за замовчуванням 3), Wait Between Tries (ms) — пауза між ними (до 5000 мс, за замовчуванням 1000). На порту 823 кожна спроба йде з нового IP, на фіксованому порту — з того самого, поки не мине час утримання.
Врахуйте: вузол запускається знову цілком, з усіма вхідними items. Якщо впала одна сторінка зі ста, усі сто завантажаться ще раз, і трафік щоразу рахується в обидва боки. Для довгих списків поставте On Error у значення Continue (using error output): невдалі items підуть в окремий вихід, де другий вузол HTTP Request з паузою повторить лише їх.
Інший спосіб — опція Response: увімкніть Never Error і Include Response Headers and Status. Тоді вузол повертає поле statusCode навіть для 403 і 429, а вузол IF може відправити такі items у повільнішу гілку.
Якщо проксі не працює
Питання й відповіді
Чи можна підключити SOCKS5?
У поле Proxy — ні: воно приймає лише адреси з http:// або https://. Адресу іншого формату n8n пропускає й бере налаштування зі змінних середовища, а якщо їх немає, запит піде напряму. Використовуйте HTTP на порту 823 або фіксованих портах 10000–20000.
Що діє, якщо задано і опцію у вузлі, і змінні середовища?
Опція Proxy у вузлі. Змінні HTTP_PROXY, HTTPS_PROXY і ALL_PROXY працюють для всіх вузлів, де власний проксі не вказано.
Змінні задано, а запити йдуть напряму. Чому?
Перевірте, чи в середовищі контейнера чи сервера немає таких самих змінних малими літерами, наприклад http_proxy: вони мають пріоритет над великими. І перезапустіть n8n після зміни змінних.
Чи Retry On Fail відправляє запит із нового IP?
На порту 823 — так, кожна спроба отримує нову адресу. На фіксованому порту IP не змінюється, поки не мине час утримання, тож якщо сайт відмовляє цій адресі, повтори не допоможуть: перенесіть item на інший порт або на 823.
Скільки трафіку витрачає один виклик HTTP Request?
Розмір запиту плюс розмір відповіді. На відміну від браузера, вузол завантажує лише вказану адресу, без картинок і скриптів. Якщо в сайту є API з JSON, запитуйте його замість HTML-сторінки: зазвичай так набагато менше.