ѕодпишитесь на наш Telegram-канал Ѕудьте в курсе последних новостей 👇 😉 ѕодписатьс€
ѕоддержим в трудное врем€ —пециальное предложение на техническую поддержку вашей »“ - инфраструктуры силами наших экспертов ѕодобрать тариф
ѕоставка оборудовани€ √аранти€ и помощь с настройкой. —кидка дл€ наших читателей по промокоду WIKIMERIONET  упить
»нтерфейс статистики Merion Mertics показывает ключевые диаграммы и графики по звонкам, а также историю звонков в формате, который легко поймет менеджер ѕопробовать бесплатно
¬недрение
офисной телефонии
Ўаг на пути к созданию доступных унифицированных коммуникаций в вашей компании ¬недрить
»нтеграци€ с CRM ѕомогаем навести пор€док с данными
и хранить их в единой экосистеме
ѕодключить
»“ Ѕезопастность ”мна€ информационна€ безопасность дл€ вашего бизнеса «аказать

Caddy: установка и настройка веб сервера

Ѕесплатно разместить веб-сайт с SSL шифрованием

ћерион Ќетворкс

5 минут чтени€

¬еб-сервер - это серверное приложение, предназначенное дл€ обработки HTTP-запросов между клиентом и сервером. HTTP - это базовый и широко используемый сетевой протокол.

Apache HTTP Server сыграл важную роль в разработке веб-сайтов. “олько у него дол€ рынка 37,3%. Nginx занимает второе место в списке, с долей рынка 32,4%. Microsoft IIS и LiteSpeed с долей рынка 7,8% и 6,9% занимают 3 и 4 места соответственно.

Ќо недавно € наткнулс€ на веб-сервер с названием Caddy.  огда развернул его дл€ тестировани€ и попыталс€ узнать о его функци€х, был при€тно удивлЄн. Ёто переносимый веб-сервер с минимальной конфигурацией. я решил, что это очень крутой проект и захотел поделитьс€ им с вами.


„то такое Caddy?

Caddy с его простотой в настройках и использовании €вл€етс€ альтернативой попул€рному веб-серверу Apache. ћэтью ’олт - руководитель проекта Caddy утверждает, что их продукт €вл€етс€ веб-сервером общего назначени€, и он предназначен дл€ обычных людей, и, веро€тно, €вл€етс€ единственным в своем роде.

Caddy €вл€етс€ первым и единственным веб-сервером, который может автоматически получать и обновл€ть сертификаты SSL/TLS с помощью сервиса Let 's Encrypt.


‘ункции Caddy

  • Ѕыстрое выполнение HTTP-запросов с использованием HTTP/2.
  • ¬еб-сервер с наименьшей конфигурацией и беспреп€тственным развертыванием.
  • TLS шифрование обеспечивает безопасную св€зь между приложени€ми и пользовател€ми через »нтернет. ¬ы можете использовать собственные ключи и сертификаты.
  • ѕростота развертывани€/использовани€. “олько один файл без зависимости от платформы.
  • ”становка не требуетс€.
  • ѕортативные исполн€емые файлы.
  • «апуск нескольких ÷ѕ/€дер.
  • ”совершенствованна€ технологи€ WebSockets - интерактивный сеанс св€зи между браузером и сервером.
  • –азметка документов на лету.
  • ѕолна€ поддержка нового протокола IPv6.
  • —оздает журнал в пользовательском формате.
  • ѕоддержка Fast CGI, обратного прокси, перезаписи и перенаправлени€, чистый URL-адрес, сжати€ Gzip, просмотра каталогов, виртуальных хосты и заголовков.
  • ƒоступно дл€ всех известных платформ - Windows, Linux, BSD, Mac, Android.

„ем отличаетс€ Caddy?

  • Caddy стремитс€ обслуживать интернет, как это должно быть в 2020 году, а не в традиционном смысле.
  • ќбладает новейшими функци€ми - HTTP/2, IPv6, ћаркдаун, WebSockets, CreateCGI, шаблоны и другие стандартные функции.
  • «апуск исполн€емые файлы без установки.
  • ѕодробна€ документаци€ с наименьшим техническим описанием.
  • –азработан с учетом потребностей конструкторов, разработчиков и блоггеров.
  • ѕоддержка виртуального хоста можете создавать любое количество сайтов.
  • ѕодходит дл€ всех - независимо от того, €вл€етс€ ли ваш сайт статическим или динамическим.
  • ¬ы фокусируетесь на том, чего достичь, а не на том, как этого добитьс€.
  • ƒоступность поддержки большинства платформ - Windows, Linux, Mac, Android, BSD.
  • ќбычно на каждый сайт приходитс€ по одному файлу Caddy.
  • ¬озможность настройки буквально за 1 минуту, даже дл€ тех, кто не сильно дружит с компьютером.

“естова€ среда

я буду тестировать его на сервере CentOS, а также на сервере Debian, но те же инструкции работают и на дистрибутивах RHEL и Debian. ƒл€ обоих серверов € буду использовать 64-разр€дные исполн€емые файлы.


”становка веб-сервера Caddy на Linux

Ќезависимо от используемой платформы и архитектуры Caddy предоставл€ет готовые установщики, которые можно запустить с помощью встроенного в систему пакетного менеджера.


”становка Caddy на Fedora, RedHat, CentOS

ћы установим последнюю версию веб-сервера Caddy из репозитори€ CORP на Fedora и RHEL/CentOS8.

# dnf install 'dnf-command(copr)'
# dnf copr enable @caddy/caddy
# dnf install caddy

Ќа RHEL/CentOS 7 используйте следующие команды:

# yum install yum-plugin-copr
# yum copr enable @caddy/caddy
# yum install caddy

”становка Caddy на Debian и Ubuntu

$ echo "deb [trusted=yes] https://apt.fury.io/caddy/ /" \
    | sudo tee -a /etc/apt/sources.list.d/caddy-fury.list
$ sudo apt update
$ sudo apt install caddy

”становив веб-сервер Caddy, с помощью следующих команд systemctl его можно запустить, активировать или же проверить статус:

# systemctl start caddy
# systemctl enable caddy
# systemctl status caddy

“еперь откройте браузер и введите следующий адрес, и вы должны увидеть страницу приветстви€ Caddy:

http://Server-IP
OR
http://yourdomain.com
Caddy успешно установлен

Ќастройка доменов в Caddy

„тобы настроить домен, сначала необходимо указать DNS-записи A/AAAA домена на этом сервере на панели управлени€ DNS. «атем создайте корневой каталог документа дл€ веб-сайта "example.com" в папке/var/www/html, как показано на рисунке.

$ mkdir /var/www/html/example.com

ѕри использовании SELinux необходимо изменить контекст безопасности файлов дл€ веб-содержимого.

# chcon -t httpd_sys_content_t /var/www/html/example.com -R
# chcon -t httpd_sys_rw_content_t /var/www/html/example.com -R

“еперь откройте и отредактируйте файл конфигурации caddy по адресу /etc/caddy/Caddyfile.

# vim /etc/caddy/Caddyfile

«амените :80 на название вашего домена и измените корень сайта на /var/www/html/example.com, как показано на рисунке.

Ќастройка /etc/caddy/Caddyfile

„тобы изменени€ вступили в силу перезапустите службу Caddy:

# systemctl reload caddy

“еперь создайте какую-нибудь HTML-страницу (можно создать собственную) и сохраните еЄ в корневом каталоге веб-сайта.

# touch /var/www/html/example.com/index.html

ƒобавьте следующий HTML-код в только что созданный файл.

# echo '<!doctype html><head><title>Caddy Test Page at TecMint</title></head><body><h1>Hello, World!</h1></body></html>' | sudo tee /var/www/html/index.html

ј теперь перезагрузите страницу, и вы должны увидеть нечто подобно скриншоту ниже:

SSL настроен на Caddy

≈сли все настроено правильно, домен будет доступен по протоколу HTTPS, что означает на вашем сайте настроено безопасное SSL подключени€.


«аключение

≈сли вы новичок и хотите настроить веб-сервер, не заморачива€сь долгой настройкой, этот инструмент идеально подходит дл€ вас. ƒаже если вы опытный пользователь, который нуждаетс€ в мгновенном и простом веб-сервере, то стоит обратить внимание на Caddy. ≈сли необходим более навороченный сервер с расширенными возможност€ми, то можно с минимальными конфигураци€ми задать разрешени€ на папки, управл€ть аутентификацией, страницей ошибок, архивацией, перенаправлением HTTP запросов и другими настройками.

 онечно же нельз€ воспринимать  эдди в качестве замены Apache или Nginx. Caddy не предназначен дл€ работы в среде с высоким трафиком. Ќо он хорошо подойдЄт в тех случа€х, где нужно быстро настроить надежный веб-сервер.