Веб-сервер – это серверное приложение, предназначенное для обработки HTTP-запросов между клиентом и сервером
HTTP является основным и очень широко используемым сетевым протоколом.
Apache HTTP Server сыграл важную роль в разработке того, что мы видим сегодня.
Он один имеет долю рынка 37,3%.
Nginx занимает второе место в списке с долей рынка 32,4%.
Microsoft IIS и LiteSpeed идут под номерами 3 и 4 с долей рынка 7,8% и 6,9% соответственно.
🐒 7 веб-серверов с открытым исходным кодом для маленьких и больших сайтов
Недавно я наткнулся на веб-сервер по имени Caddy.
Когда я попытался узнать о его возможностях и развернул его для тестирования, я был удивлен.
Веб-сервер, который является переносимым и не нуждается ни в каком файле конфигурации.
Я подумал, что это очень крутой проект, и хотел поделиться им с вами.
Ранее мы уже рассматривали его особенности тут:
Caddy — веб-сервер HTTP / 2 с автоматическим HTTPS для сайтов
Тестовая среда
Я буду тестировать его на сервере CentOS, а также на сервере Debian, но те же инструкции работают и в дистрибутивах на основе RHEL и Debian.
Для обоих серверов я собираюсь использовать 64-битные бинарники.
Операционные системы: CentOS 8 и Debian 10 Buster
Caddy: v2.0.0
Установка Caddy на Linux
Независимо от того, на какой платформе вы находитесь и какую архитектуру вы используете, caddy предоставляет готовые к использованию бинарные пакеты, которые можно установить с помощью диспетчера пакетов по умолчанию, как показано далее.
Установка Caddy на Fedora, RedHat, CentOS
Мы будем устанавливать последнюю версию веб-сервера Caddy из репозитория CORP на Fedora или RHEL / CentOS 8.
# 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
http://Server-IP или http://yourdomain.com
Настройка доменов с 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
# systemctl reload caddy
Теперь создайте любую страницу HTML (вы можете создать свою собственную) и сохраните страницу в корневой директории своего сайта.
# touch /var/www/html/example.com/index.html
Добавьте следующий пример HTML-кода на главную страницу вашего сайта.
# echo '<!doctype html><head><title>Caddy Test Page at itsecforu</title></head><body><h1>Hello, World!</h1></body></html>' | sudo tee /var/www/html/index.html
Заключение
Если вы новичок и хотите настроить веб-сервер, не запутавшись в настройках, этот инструмент отлично вам подойдет.
Даже если вы опытный пользователь, которому нужен быстрый и простой веб-сервер, стоит попробовать Caddy.
С небольшой настройкой вы также можете установить права доступа к папкам, контролировать аутентификацию, страницы ошибок, Gzip, перенаправление HTTP и другие функции, если вам нужно настроить более сложный и продвинутый веб-сервер.
Не ставьте Caddy на одну строчку с Apache или Nginx.
Caddy не предназначен для работы в условиях интенсивного трафика.
Он предназначен для быстрой настройки веб-сервера, когда вас интересует скорость и надежность.