Как установить веб-сервер Caddy с PHP 8.1 на Ubuntu 22.04
Это руководство существует для этих версий ОС
- Ubuntu 22.04 (Jammy Jellyfish)
- Ubuntu 16.04 (Xenial Xerus)
На этой странице
- Предпосылки
- Установить веб-сервер Caddy
- Как запустить и остановить службу Caddy
- Включить поддержку PHP в Caddy
- Создать файл конфигурации виртуального хоста Caddy
- Проверьте поддержку Caddy PHP
- Заключение
Caddy — это современный веб-сервер, построенный на языке GO. Это простой, удобный, легкий и коммерчески поддерживаемый веб-сервер. Он поддерживает HTTP/2 и экспериментальные протоколы HTTP/3 и работает где угодно без внешних зависимостей. Его можно расширить с помощью плагинов. Caddy — единственный веб-сервер, использующий HTTPS автоматически и по умолчанию. Caddy автоматически получает и продлевает сертификаты TLS для ваших сайтов. Он разработан с учетом требований безопасности и предоставляет ряд функций, полезных для размещения веб-сайтов.
В этом посте мы объясним, как установить веб-сервер Caddy на Ubuntu 22.04.
Предпосылки
- Сервер под управлением Ubuntu 22.04.
- Действительное доменное имя указывает на IP-адрес вашего сервера.
- На сервере настроен пароль root.
Установите веб-сервер Caddy
По умолчанию пакет Caddy не включен в стандартный репозиторий Ubuntu 22.04. Поэтому вам нужно будет добавить репозиторий Caddy в вашу систему.
Сначала установите все необходимые зависимости с помощью следующей команды:
apt-get install -y curl debian-keyring debian-archive-keyring apt-transport-https
Затем загрузите и добавьте ключ GPG с помощью следующей команды:
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
Затем добавьте репозиторий Caddy в APT с помощью следующей команды:
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | tee /etc/apt/sources.list.d/caddy-stable.list
Затем обновите репозиторий и установите веб-сервер Caddy, выполнив следующую команду:
apt-get update
apt-get install caddy -y
После установки Caddy вы можете проверить версию Caddy с помощью следующей команды:
caddy version
Вы получите следующий вывод:
v2.6.2 h1:wKoFIxpmOJLGl3QXoo6PNbYvGW4xLEgo32GPBEjWL8o=
Затем вам нужно будет установить некоторые разрешения, чтобы разрешить двоичному файлу caddy подключаться к привилегированным портам, таким как 80 и 443. Вы можете установить его с помощью следующей команды:
setcap 'cap_net_bind_service=+ep' /usr/bin/caddy
Теперь откройте веб-браузер и перейдите на страницу Caddy по умолчанию, используя URL-адрес http://your-server-ip. Вы должны увидеть следующую страницу:
Как запустить и остановить службу Caddy
Вы можете управлять сервисом Caddy через файл systemd. Вы можете легко запускать и останавливать его с помощью команды systemctl.
Чтобы запустить службу Caddy, выполните следующую команду:
systemctl start caddy
Чтобы остановить службу Caddy, выполните следующую команду:
systemctl stop caddy
Чтобы служба Caddy запускалась при перезагрузке системы, выполните следующую команду:
systemctl enable caddy
Чтобы проверить состояние службы Caddy, выполните следующую команду:
systemctl status caddy
Вы получите следующий вывод:
? caddy.service - Caddy Loaded: loaded (/lib/systemd/system/caddy.service; enabled; vendor preset: enabled) Active: active (running) since Sun 2022-11-20 11:03:31 UTC; 42s ago Docs: https://caddyserver.com/docs/ Main PID: 2356 (caddy) Tasks: 8 (limit: 2242) Memory: 7.8M CPU: 31ms CGroup: /system.slice/caddy.service ??2356 /usr/bin/caddy run --environ --config /etc/caddy/Caddyfile Nov 20 11:03:31 ubuntu2204 caddy[2356]: {"level":"info","ts":1668942211.4061167,"msg":"using provided configuration","config_file":"/etc/cadd> Nov 20 11:03:31 ubuntu2204 caddy[2356]: {"level":"info","ts":1668942211.4079537,"logger":"admin","msg":"admin endpoint started","address":"lo> Nov 20 11:03:31 ubuntu2204 caddy[2356]: {"level":"warn","ts":1668942211.4082074,"logger":"http","msg":"server is listening only on the HTTP p> Nov 20 11:03:31 ubuntu2204 caddy[2356]: {"level":"info","ts":1668942211.4085367,"logger":"http.log","msg":"server running","name":"srv0","pro> Nov 20 11:03:31 ubuntu2204 caddy[2356]: {"level":"info","ts":1668942211.4088042,"msg":"autosaved config (load with --resume flag)","file":"/v> Nov 20 11:03:31 ubuntu2204 systemd[1]: Started Caddy. Nov 20 11:03:31 ubuntu2204 caddy[2356]: {"level":"info","ts":1668942211.419063,"logger":"tls.cache.maintenance","msg":"started background cer> Nov 20 11:03:31 ubuntu2204 caddy[2356]: {"level":"info","ts":1668942211.4192455,"logger":"tls","msg":"cleaning storage unit","description":"F> Nov 20 11:03:31 ubuntu2204 caddy[2356]: {"level":"info","ts":1668942211.419398,"logger":"tls","msg":"finished cleaning storage units"} Nov 20 11:03:31 ubuntu2204 caddy[2356]: {"level":"info","ts":1668942211.4197013,"msg":"serving initial configuration"}
Включить поддержку PHP в Caddy
Сначала установите PHP и другие необходимые расширения, используя следующую команду:
apt-get install php-fpm php-mysql php-curl php-gd php-mbstring php-common php-xml php-xmlrpc -y
После установки PHP отредактируйте файл конфигурации PHP-FPM и измените пользователя и группу по умолчанию с помощью caddy:
nano /etc/php/8.1/fpm/pool.d/www.conf
Найдите и замените имя пользователя и группы с www-data на caddy:
user = caddy group = caddy listen.owner = caddy listen.group = caddy
Сохраните и закройте файл, затем перезапустите службу PHP-FPM, чтобы применить изменения:
systemctl restart php8.1-fpm
Создать файл конфигурации виртуального хоста Caddy
Файл конфигурации виртуального хоста Caddy по умолчанию находится в /etc/caddy/Caddyfile.
Отредактируйте файл /etc/caddy/Caddyfile с помощью следующей команды:
nano /etc/caddy/Caddyfile
Удалите все строки и добавьте следующие строки:
caddy.example.com:80 { root * /usr/share/caddy/ encode gzip zstd php_fastcgi unix//run/php/php8.1-fpm.sock }
Сохраните и закройте файл, затем перезапустите службу Caddy, чтобы применить изменения:
systemctl restart caddy
Затем создайте образец PHP-файла для Caddy с помощью следующей команды:
nano /usr/share/caddy/info.php
Добавьте следующие строки:
<?php phpinfo(); ?>
Сохраните и закройте файл, когда закончите.
Проверьте поддержку Caddy PHP
Теперь откройте веб-браузер и зайдите на веб-сайт Caddy, используя URL-адрес http://caddy.example.com/info.php. Вы должны увидеть страницу PHP на следующем экране:
Заключение
В этом посте мы объяснили, как установить и настроить веб-сервер Caddy в Ubuntu 22.04. Теперь вы можете приступить к созданию и размещению собственного веб-сайта с помощью веб-сервера Caddy. Не стесняйтесь спрашивать меня, если у вас есть какие-либо вопросы.