Налаштування зворотного проксі в ServBay: Відображення внутрішніх або віддалених сайтів для розробки й тестування
ServBay — це локальне середовище веб-розробки, створене для macOS, яке інтегрує оточення для PHP, Node.js, Python, Go, Java та баз даних MySQL, PostgreSQL, MongoDB, Redis й інших. Окрім розміщення локальних кодових проєктів, ServBay пропонує потужну функцію зворотного проксі. За її допомогою ви зручно відображаєте веб-сайти з вашої локальної мережі, віртуальних машин, контейнерів або навіть віддалених серверів у середовищі ServBay, що суттєво спрощує розробку, тестування і доступ.
У цій статті докладно розглянуто, як налаштувати зворотний проксі у ServBay, щоб проксіювати сайти із внутрішньої мережі чи будь-яких інших доступних адрес для єдиного керування та ефективної розробки.
Огляд
Зворотний проксі отримує запити з клієнта (наприклад, з браузера) і перенаправляє їх до одного чи декількох бекенд-серверів (у нашому випадку — це внутрішній або віддалений сайт). ServBay використовує вбудований веб-сервер (Caddy або Nginx) для реалізації цієї функції.
Основні переваги використання зворотного проксі для локальної розробки:
- Єдина точка доступу: Ви можете відкривати всі внутрішні чи зовнішні ресурси через єдиний локальний домен, не запам'ятовуючи складні IP-адреси та порти.
- Спрощена настройка SSL: Можна скористатися керуванням SSL у ServBay (через ServBay CA або ACME), щоб забезпечити HTTPS навіть для сайтів, які самі використовують лише HTTP.
- Локалізоване налагодження: Зручно налагоджувати веб-додатки з внутрішньої чи віддаленої мережі прямо у вашому локальному браузері.
- Обхід мережевих обмежень: У деяких випадках можливий швидкий доступ до корпоративної внутрішньої мережі чи захищених ресурсів (за умови, що ваш Mac із ServBay має необхідний доступ).
Необхідні умови
Перед початком налаштування зворотного проксі переконайтесь, що:
- ServBay встановлено і запущено: Перевірте, що додаток ServBay інстальовано на вашому macOS і він працює.
- Цільовий сайт доступний: Внутрішній або віддалений веб-сайт, який ви бажаєте проксіювати, працює й доступний з того Mac, де розгорнуто ServBay. Наприклад, якщо ціль —
192.168.1.100:8080
, перевірте, що ваш Mac "бачить"192.168.1.100
і може звертатися до192.168.1.100:8080
.
Покрокова інструкція додавання сайту зворотного проксі
Нижче — детальні кроки для налаштування зворотного проксі у ServBay:
Крок 1: Відкрийте управління ServBay
У папці програм вашого Mac знайдіть іконку ServBay
і двічі клацніть, щоб запустити додаток.
Крок 2: Перейдіть до розділу керування сайтами
Після запуску ServBay ви побачите головне вікно. Зліва у меню натисніть Сайти
. Тут можна керувати усіма локальними та зворотними проксі сайтами.
Крок 3: Додайте новий сайт
У розділі керування сайтами внизу сторінки знайдіть та натисніть кнопку +
. Після цього справа з'явиться нова форма для налаштування сайту.
Крок 4: Налаштуйте параметри зворотного проксі
У формі створення нового сайту вкажіть ключові дані для зворотного проксі:
- Назва (Name): Придумайте зрозумілу назву для нового проксі-сайту, наприклад,
Internal Backend Proxy
. - Домен (Domain): Вкажіть домен, через який ви хочете локально відкривати проксіований сайт, наприклад,
backend.servbay.demo
абоproxy.to.local
. Зазвичай ServBay автоматично додає ці домени у файлhosts
вашої системи, щоб вони вказували на127.0.0.1
або::1
. - Протокол (Protocol): Оберіть підтримувані протоколи — зазвичай
HTTP/HTTPS
для обох варіантів. ServBay автоматично впорається з SSL відповідно до налаштувань. - Метод отримання SSL-сертифікату (SSL Certificate Request Method):
- ServBay CA (рекомендовано для локальної розробки): ServBay використає вбудований центр сертифікації (CA) для автоматичної генерації/менеджменту SSL-сертифікатів. У цьому випадку потрібно довіряти кореневому сертифікату ServBay CA у системі або браузері, щоб уникнути попередження.
- ACME (Let's Encrypt): Для публічних доменів, до яких є доступ з інтернету — можна отримати безкоштовний SSL-сертифікат через Let’s Encrypt.
- Manual (вручну): Якщо у вас вже є свої SSL-сертифікати (
.crt
,.key
,.ca-bundle
), оберіть цей варіант для ручного завантаження. Для локальної розробки і проксіювання внутрішніх ресурсів найкраще підходитьServBay CA
.
- Тип сайту (Website Type): Виберіть
Зворотний проксі (Reverse Proxy)
. Це ключ до включення проксі-функцій. - Ціль проксі (Proxy Target): Вкажіть повну адресу цільового сайту (у форматі
IP:порт
чи як повний URL).- Приклад 1 (IP:порт):
192.168.1.100:8080
- Приклад 2 (URL із протоколом):
http://192.168.1.100:8080
- Приклад 3 (внутрішній хост):
backend.internal:8443
(за умови, що ваш Mac може його розпізнати) - Приклад 4 (віддалений URL):
https://api.example.com
Переконайтесь — ця адреса досяжна з Mac із ServBay.
- Приклад 1 (IP:порт):
Крок 5: Завершіть і збережіть налаштування
Після введення всіх даних натисніть Додати (Add)
унизу форми. ServBay автоматично збереже параметри і створить відповідні правила проксі у конфігурації веб-сервера (Caddy чи Nginx).
Після успішного збереження новий сайт з'явиться у списку.
Крок 6: Відкрийте зворотний проксі-сайт
Тепер відкрийте у браузері домен, який ви налаштували (наприклад, proxy.to.local
або backend.servbay.demo
) — і потрапите на проксійований внутрішній чи віддалений сайт.
Якщо було обрано ServBay CA із HTTPS, при першому вході можливе попередження про сертифікат (якщо кореневий сертифікат CA ще не довірено).
Крок 7: Швидкі дії для сайту
Для кожного сайту ServBay пропонує зручні швидкі дії:
- Відкриття кореневої теки в IDE: Для зворотних проксі ця опція не завжди актуальна, оскільки локальної теки може не бути.
- Відкрити сайт у браузері: Швидкий доступ через браузер за замовчуванням.
- Перегляд логів сайту: Слідкуйте за лінками та помилками у логах серверу, це допоможе під час налагодження.
- Пауза або запуск сайту: Тимчасово вимикайте або активуйте проксі за необхідності.
- Видалити сайт: Повністю заберіть проксі-сайт із ServBay.
Часті питання і рішення (FAQ)
Q: Сайт не відкривається, у браузері помилка.
- Перевірте статус ServBay: Переконайтесь, що ServBay запущений, а веб-сервер (Caddy/Nginx) працює.
- Перевірте доменне ім’я: Введене доменне ім’я має вести на IP вашого Mac (зазвичай ServBay додає запис у файл hosts, але це можна перевірити вручну).
- Перегляньте логи сайту: В користувацькому інтерфейсі ServBay відкрийте "Перегляд логів". Там буде вся інформація щодо запитів клієнтів, спроб підключення до проксі-цілі, а також можливі помилки — це головне джерело для діагностики.
- Перевірте фаєрвол або антивіруси: Переконайтесь, що macOS-фаєрвол або інша безпека не блокує порти 80 чи 443, а також, що не блокується доступ ServBay до вашої проксі-цілі.
Q: Mac може отримати доступ до цільового сайту напряму, але через домен ServBay — помилка.
- Перевірте формат цілі проксі: Впевніться, що "Ціль проксі" вказано коректно, і з Mac із ServBay можна безпосередньо звернутись за цією адресою. Можна протестувати цю адресу через
curl [адреса проксі-цілі]
у терміналі. - Перевірте конфігурацію бекенду: Деякі сервери на стороні проксі-цілі перевіряють заголовок
Host
. ServBay за замовчуванням підставляє оригінальнийHost
; якщо на бекенді потрібен особливий домен — це треба враховувати. В секції розширених налаштувань ServBay ви можете редагувати передавані заголовки (для цього потрібно вручну корегувати Caddyfile чи Nginx, що виходить за межі базового UI). - Перевірте фаєрвол цільового сервера: Навіть якщо на Mac відкрито порт цілі, сервер може пускати лише певні адреси внутрішньої мережі. Переконайтесь, що доступ Mac із ServBay дозволено.
Q: При доступі через HTTPS — попередження про сертифікат
- ServBay CA: Це очікувана поведінка, оскільки ServBay CA приватний, а не публічний центр сертифікації. Просто довірте кореневий сертифікат ServBay CA у налаштуваннях систему чи браузера.
- ACME (Let's Encrypt): Переконайтесь, що домен роз resolves на ваш Mac із ServBay — і заявка на ACME-сертифікат була подана правильно (дивіться логи для деталей).
Q: Як проксіювати цілі, які потребують специфічних заголовків чи cookie?
Зазвичай базові налаштування ServBay передають більшість стандартних даних клієнта до проксі-цілі. Для більш складних сценаріїв — наприклад, якщо потрібно додати особливий HTTP-заголовок, змінити відповідь, працювати з особливими cookie чи ресрайтити шляхи — скористайтесь режимом розширених налаштувань ServBay із ручним редагуванням Caddyfile або Nginx для гнучких правил проксі. Для цього знадобиться досвід роботи з цими веб-серверами.
Висновок
Функціональність зворотного проксі ServBay дозволяє легко інтегрувати веб-сайти з внутрішньої мережі, віртуальних машин, контейнерів чи зовнішніх серверів у ваше локальне розробницьке середовище. Ви отримуєте єдину та зручну точку доступу, а ще — спрощуєте налаштування SSL і локальне налагодження. Дотримуйтесь кроків у цьому гайді, щоб швидко налаштувати проксі-сайти. З використанням логів ServBay і порад щодо пошуку несправностей ви забезпечите стабільну роботу проксі і значно підвищите ефективність своєї веб-розробки.