Ubuntu 22.04에서 PHP 8.1로 캐디 웹 서버를 설치하는 방법
이 튜토리얼은 다음 OS 버전에 대해 존재합니다.
- Ubuntu 22.04(Jammy Jellyfish)
- Ubuntu 16.04(Xenial Xerus)
이 페이지에서
- 전제 조건
- 캐디 웹 서버 설치
- 캐디 서비스 시작 및 중지 방법
- 캐디에서 PHP 지원 활성화\n
- 캐디 가상 호스트 구성 파일 만들기\n
- 캐디 PHP 지원 확인\n
- 결론
Caddy는 GO 언어로 구축된 최신 웹 서버입니다. 간단하고 사용자 친화적이며 가볍고 상업적으로 지원되는 웹 서버입니다. HTTP/2 및 실험적인 HTTP/3 프로토콜을 지원하고 외부 종속성 없이 어디에서나 실행됩니다. 플러그인을 통해 확장할 수 있습니다. 캐디는 기본적으로 HTTPS를 자동으로 사용하는 유일한 웹 서버입니다. Caddy는 사이트에 대한 TLS 인증서를 자동으로 획득하고 갱신합니다. 보안을 염두에 두고 설계되었으며 웹사이트 호스팅에 유용한 여러 기능을 제공합니다.
이번 포스팅에서는 우분투 22.04에 캐디 웹서버를 설치하는 방법에 대해 설명드리겠습니다.
전제 조건
- Ubuntu 22.04를 실행하는 서버.\n
- 유효한 도메인 이름은 서버 IP를 가리킵니다.\n
- 루트 암호는 서버에서 구성됩니다.\n
캐디 웹 서버 설치
기본적으로 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
다음으로 다음 명령을 사용하여 APT에 Caddy 리포지토리를 추가합니다.
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 version
다음과 같은 결과가 표시됩니다.
v2.6.2 h1:wKoFIxpmOJLGl3QXoo6PNbYvGW4xLEgo32GPBEjWL8o=
다음으로 캐디 바이너리가 80 및 443과 같은 권한 있는 포트에 연결할 수 있도록 일부 권한을 설정해야 합니다. 다음 명령을 사용하여 설정할 수 있습니다.
setcap 'cap_net_bind_service=+ep' /usr/bin/caddy
이제 웹 브라우저를 열고 URL http://your-server-ip를 사용하여 Caddy 기본 페이지에 액세스하십시오. 다음 페이지가 표시됩니다.

캐디 서비스 시작 및 중지 방법
systemd를 통해 캐디 서비스를 관리할 수 있습니다. systemctl 명령을 사용하여 쉽게 시작하고 중지할 수 있습니다.
캐디 서비스를 시작하려면 다음 명령을 실행하십시오.
systemctl start caddy
캐디 서비스를 중지하려면 다음 명령을 실행하십시오.
systemctl stop caddy
시스템 재부팅 시 캐디 서비스가 시작되도록 하려면 다음 명령을 실행하십시오.
systemctl enable 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 지원 활성화
먼저 다음 명령을 사용하여 PHP 및 기타 필요한 확장을 설치합니다.
apt-get install php-fpm php-mysql php-curl php-gd php-mbstring php-common php-xml php-xmlrpc -y
PHP를 설치한 후 PHP-FPM 구성 파일을 편집하고 캐디를 사용하여 기본 사용자 및 그룹을 변경합니다.
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 기본 가상 호스트 구성 파일은 /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
다음으로 다음 명령을 사용하여 Caddy용 샘플 PHP 파일을 만듭니다.
nano /usr/share/caddy/info.php
다음 줄을 추가합니다.
<?php phpinfo(); ?>
완료되면 파일을 저장하고 닫습니다.
캐디 PHP 지원 확인
이제 웹 브라우저를 열고 URL http://caddy.example.com/info.php를 사용하여 Caddy 웹 사이트에 액세스하십시오. 다음 화면에 PHP 페이지가 표시되어야 합니다.

결론
이번 포스팅에서는 우분투 22.04에서 캐디 웹서버를 설치하고 설정하는 방법에 대해 설명드렸습니다. 이제 Caddy 웹 서버를 사용하여 자신의 웹사이트를 만들고 호스팅할 수 있습니다. 궁금한 점이 있으면 언제든지 문의해 주세요.