Caddy — веб-сервер, розроблений для сучасних веб-додатків. Caddy простий у налаштуванні та має автоматичне Let's Encrypt, тому ваші веб-сайти завжди захищені за замовчуванням. Це веб-сервер автора.
Ось короткий перелік функцій Caddy:
Базовий веб-сервер
Зворотний проксі для спрямування трафіку на кілька сайтів
Модулі для багатьох робочих навантажень, включаючи TCP, SSH тощо
Вбудований балансир навантаження для керування трафіком на кількох веб-сайтах
Якщо ви спробуєте переглянути веб-сторінку за IP-адресою чи доменним іменем вашого комп’ютера з іншого комп’ютера, ймовірно, ви нічого не отримаєте. Так буде, якщо брандмауер запущено.
Щоб відкрити необхідні порти, щоб фактично «бачити» ваші веб-сторінки, ви скористаєтеся вбудованим брандмауером Rocky Linux, firewalld. Команда firewalld для цього — firewall-cmd.
Щоб відкрити служби http і https, служби, які обробляють веб-сторінки, запустіть:
Прапор -–permanent вказує брандмауеру застосовувати цю конфігурацію щоразу, коли перезапускаються брандмауер та сервер.
–-zone=public вказує брандмауеру дозволити вхідні підключення до цього порту від усіх.
Нарешті, --add-service=http і --add-service=https вказують firewalld передавати весь трафік HTTP і HTTPS на сервер.
Ці конфігурації не почнуть діяти, доки ви не примусово усунете проблему. Для цього скажіть firewalld перезавантажити свої конфігурації:
sudofirewall-cmd--reload
Примітка
Тепер є мінімальний шанс, що це не спрацює. У тих рідкісних випадках змусьте `firewalld` виконувати ваші ставки за допомогою старої функції вимкнути і знову ввімкнути.
```bash
systemctl restart firewalld
```
Щоб забезпечити доступність портів, запустіть firewall-cmd --list-all. Правильно налаштований брандмауер виглядатиме приблизно так:
На відміну від традиційних веб-серверів, таких як Apache і Nginx, формат конфігурації Caddy значно простіший. Минули ті часи, коли вам доводилося налаштовувати дрібниці, як-от модель потоків веб-сервера або сертифікати SSL, якщо ви цього не хотіли.
Щоб відредагувати файл конфігурації Caddy:
vim/etc/caddy/Caddyfile
Мінімальна статична конфігурація веб-сервера може бути подібною до цієї:
Як згадувалося раніше, Caddy підтримує підтримку FastCGI для PHP. Хороша новина полягає в тому, що, на відміну від Apache і Nginx, Caddy автоматично обробляє розширення файлів PHP.
Щоб установити PHP, спочатку додайте репозиторій Remi (примітка: якщо ви використовуєте Rocky Linux 8.x, замініть 8 поруч із «release-» нижче):
Базове встановлення та налаштування Caddy дуже прості. Пройшли ті часи, коли ви витрачали години на налаштування Apache. Так, Nginx, безсумнівно, є вдосконаленням, але йому все ще бракує сучасних, але важливих функцій, таких як Let's Encrypt і підтримка входу Kubernetes, яку вбудовано в Caddy. Натомість у Nginx (і Apache) ви повинні додавати їх окремо.
Я використовую Caddy з 2019 року як свій веб-сервер, і він просто чудовий. Насправді, щоразу, коли я маю справу з Apache, Nginx або IIS, це майже як повертати машину часу в 2010 рік або раніше.