Як встановити веб-сервер Caddy на Ubuntu

Як веб-сервер, Caddy є відносно новою альтернативою Apache і Nginx, хоча спочатку він був випущений у 2015 році. Це веб-сервер з відкритим вихідним кодом, створений мовою Go, який використовує HTTPS за замовчуванням. Як і будь-який інший веб-сервер, Caddy можна використовувати як веб-сервер, що обслуговує як статичні, так і динамічні веб-сайти. Caddy – це універсальний та ефективний статичний файловий сервер. Його також можна використовувати як надійний і масштабований зворотний проксі. У цьому посібнику ми покажемо вам, як встановити веб-сервер Caddy на Ubuntu 22.04.

Необхідні умови

  • Ubuntu 22.04 VPS
  • Потрібен кореневий доступ SSH або користувач із привілеями sudo

Умовні позначення

# – зазначені команди мають виконуватися з правами root або безпосередньо від імені користувача root, або за допомогою команди sudo.

$ – ці команди мають виконуватися від імені звичайного користувача.

Крок 1. Увійдіть на свій сервер по SSH

Спочатку вам потрібно буде увійти на ваш Ubuntu 22.04 VPS по SSH як користувач root:

ssh root@IP_Address -p Port_number

Вам потрібно буде замінити ‘IP_Address’ і ‘Port_number’ на відповідні IP-адресу і номер порту SSH вашого сервера. Крім того, замініть ‘root’ на ім’я користувача системи з правами sudo.

Перевірити, чи встановлено на вашому сервері правильну версію Ubuntu, можна за допомогою такої команди:

# lsb_release -a

У результаті ми отримаємо таке повідомлення.

Потім виконайте наступну команду, щоб переконатися, що всі встановлені на сервері пакети оновлені до останніх доступних версій:

# apt update

Крок 2. Встановлення залежностей

Існує щонайменше три способи встановлення Caddy. Ми можемо встановити його, просто завантаживши виконуваний бінарний файл, встановити його, скомпілювавши вихідний код, або встановити його з сховища. У цій статті ми покажемо вам, як встановити Caddy за допомогою сховища. Оскільки для встановлення веб-сервера Caddy потрібні деякі пакети, перед початком роботи ми встановимо всі залежності на нашу систему Ubuntu 22.04. Для цього виконаємо наведену нижче команду.

# apt install gnupg curl apt-transport-https cdebian-keyring debian-archive-keyring -y

Крок 3. Додавання репозиторію Caddy

Перш ніж приступити до встановлення, нам необхідно додати ключ GPG за допомогою такої команди:

# curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg

Потім додайте сховище.

# wget -qO - https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt | sudo tee /etc/apt/sources.list.d/caddy.list

Далі не забудьте оновити індекс пакетів і отримати інформацію про доступні пакети з усіх увімкнених репозиторіїв.

# apt update

Крок 4. Встановіть Caddy

На попередньому кроці ми додали сховище та оновили індекс пакетів. Нарешті, ми можемо виконати наведену нижче команду для встановлення Caddy.

# apt install caddy -y

Ось і все! Ви успішно встановили Caddy на свою систему Ubuntu 22.04. Після встановлення Caddy почне працювати – він уже налаштований на запуск під час перезавантаження сервера. Ми можемо перевірити це, виконавши наступну команду:

# systemctl status caddy

Ви також можете переконатися в тому, що Caddy працює, спробувавши зайти в нього через ваш улюблений веб-браузер. Перейдіть за адресою http://YOUR_SERVER_IP_ADDRESS і ви побачите таке:

Крок 5. Налаштуйте Caddy

Наразі Caddy запущено, і ви можете отримати доступ до нього через порт 80. Щоб розмістити ваш сайт, ми можемо змінити файл /etc/caddy/Caddyfile для створення віртуального хоста. Давайте відредагуємо його для розміщення вашого простого сайту.

# nano /etc/caddy/Caddyfile

Додайте у файл такі рядки:

yourdomain.com {

	root * /var/www/html
	file_server
	log {
        output file /var/log/caddy/access.log
        format console
	}
}

Не забудьте замінити yourdomain.com на реальне ім’я домену або піддомену, який уже вказує на ваш сервер. Збережіть файл і вийдіть із редактора.

Щоб застосувати нові зміни, нам потрібно перезапустити Caddy.

# systemctl restart caddy

Зачекайте близько хвилини, і Caddy вже обслуговуватиме ваш сайт у режимі HTTPS. Якщо DNS-запис вашого домену або піддомену не вказує на ваш сервер Caddy, то він буде обслуговуватися в режимі HTTP.

Приклад: Використання Caddy з WordPress

Якщо ви хочете розмістити на своєму домені/піддомені CMS – наприклад, WordPress – ми можемо перейти до наступних кроків. Давайте встановимо MariaDB і PHP.

# apt install mariadb-server php-{curl,fpm,imagick,mbstring,mysql,xml,zip}

Після встановлення MariaDB і PHP-FPM мають бути готові до роботи. Давайте приступимо до створення бази даних.

# mysql

Виконайте ці команди в оболонці MySQL.

mysql> CREATE DATABASE wpcaddy;
Query OK, 1 row affected (0.00 sec)

mysql> CREATE USER 'wpcaddy'@'localhost' IDENTIFIED BY 'm0d1fyth15';
Query OK, 0 rows affected (0.01 sec)

mysql> GRANT ALL PRIVILEGES ON wpcaddy.* TO 'wpcaddy'@'localhost';
Query OK, 0 rows affected (0.01 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

mysql> \q

Далі давайте відредагуємо наш файл Caddy. Видаліть рядки з попереднього кроку або додайте такі рядки в /etc/caddy/Caddyfile

yourdomain.com {

	root * /opt/caddy
	file_server
	encode zstd gzip
	php_fastcgi unix//run/php/php8.1-fpm.sock 
	
	log {
        output file /var/log/caddy/access.log
        format console
	}
}

Збережіть файл і вийдіть. Зверніть увагу, що вам потрібно перезапускати Caddy щоразу, коли ви вносите зміни до свого Caddyfile.

# systemctl restart caddy

Далі нам потрібно завантажити файли ядра WordPress. Ви можете встановити і використовувати WP-CLI, якщо хочете, але в цій статті ми будемо використовувати wget. Якщо на вашому сервері відсутній пакет wget, ви можете встановити його за допомогою apt install wget. Давайте завантажимо, витягнемо і виправимо права доступу.

# cd /opt/caddy
# wget https://wordpress.org/latest.tar.gz
# tar -xzvf latest.tar.gz --strip-components 1
# chown -R www-data: /opt/caddy

Ось і все, ви повинні мати доступ до HTTPS://yourdomain.com, щоб завершити встановлення WordPress.

Поділіться своєю любов'ю

Залишити відповідь

0 комментариев
Вбудовані Відгуки
Переглянути всі коментарі
0
Ми любимо ваші думки, будь ласка, прокоментуйте.x