diff options
Diffstat (limited to 'LINUX/HOME_SERVER/Caddy - замена Nginx.md')
| -rw-r--r-- | LINUX/HOME_SERVER/Caddy - замена Nginx.md | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/LINUX/HOME_SERVER/Caddy - замена Nginx.md b/LINUX/HOME_SERVER/Caddy - замена Nginx.md new file mode 100644 index 0000000..3b4cfd6 --- /dev/null +++ b/LINUX/HOME_SERVER/Caddy - замена Nginx.md @@ -0,0 +1,54 @@ +Caddy - замена Nginx с авто-TLS и минимальной настройкой + +Ты наверняка используешь Nginx как прокси-сервер или для выдачи статики. Но есть более свежий и удивительно простой веб-сервер - Caddy. Он сам получит HTTPS, сам перезапустится при изменении конфига и вообще просит к себе минимум внимания. Разбираемся, чем он крут. + +Caddy — это современный веб-сервер, написанный на Go. Его главная фишка — всё работает из коробки: + +1) Автоматический HTTPS от Let's Encrypt +2) Перезапуск при изменении конфига +3) Встроенный reverse proxy +4) Простая конфигурация (Caddyfile) + +Установка: + + +sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https + +curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy.gpg + +curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list + +sudo apt update +sudo apt install caddy + + +Минимальный пример Caddyfile: + + +example.com { + reverse_proxy localhost:3000 +} + +- Заменяешь "example.com" на свой домен +- localhost:3000 (твой сервис); + +Запуск сервера + +Caddy работает как systemd-сервис. Чтобы запустить или перезапустить: + + +sudo systemctl restart caddy + +После этого caddy сам проверит домен, получит HTTPS-сертификат от Let's Encrypt, настроит прокси и всё заработает) + +Почему это удобно + +- Не нужно возиться с SSL — HTTPS работает из коробки +- Конфигурация проще, чем у Nginx +- Отлично подходит для pet-проектов, демо, VPS-серверов + +Когда лучше остаться с Nginx + +1) Если у тебя уже сложная конфигурация с множеством rewrite, map, ssl_params +2) Если нужна кастомная сборка модулей +3) Если используешь stream (TCP/UDP proxy)
\ No newline at end of file |
