Як встановити та налаштувати PyroCMS на Ubuntu 24.04

Як встановити та налаштувати PyroCMS на Ubuntu 24.04

 

PyroCMS – це CMS з відкритим вихідним кодом, заснована на веб-фреймворках PHP та Laravel. Це потужна система управління контентом з MySQL/MariaDB в якості бази даних, а також забезпечує інтуїтивно зрозумілу і просту веб-адміністрацію для більш зручного управління.

У цьому посібнику ми розповімо вам про встановлення PyroCMS на Ubuntu 24.04 за допомогою стека LEMP (Linux, Nginx, MySQL/MariaDB та PHP-FPM) та Composer.

Передумови

Перш ніж почати, переконайтеся, що у вас є наступне:

  • Сервер Ubuntu 24.04.
  • Користувач без права root і правами адміністратора.
  • Доменне ім’я вказує на IP-адресу сервера.

Встановлення залежностей

PyroCMS – це система управління контентом на базі Laravel з базою даних MySQL/MariaDB. Перед встановленням PyroCMS ви встановите LEMP Stack (Linux, Nginx, MySQL/MariaDB та PHP-FPM) та Composer на свою систему Ubuntu.

Спочатку виконайте наступну команду apt, щоб оновити індекс пакетів і встановити стек LEMP (Linux, Nginx, MySQL/MariaDB і PHP-FPM) і Composer.

sudo apt update sudo apt install nginx mariadb-server composer php-cli php-fpm php-mysql php-curl php-sqlite3 php-mbstring php-gd php-xml

Введіть Y, щоб підтвердити інсталяцію.

Як встановити та налаштувати PyroCMS на Ubuntu 24.04

Після інсталяції перевірте служби LEMP Stack, щоб переконатися, що ці служби працюють.

Перевірте веб-сервер Nginx за допомогою команди systemctl нижче.

sudo systemctl is-enabled nginx
sudo systemctl status nginx

Тепер перевірте стан сервера MariaDB за допомогою наступних параметрів:

Як встановити та налаштувати PyroCMS на Ubuntu 24.04

sudo systemctl is-enabled mariadb
sudo systemctl status mariadb

Як встановити та налаштувати PyroCMS на Ubuntu 24.04

Далі виконайте наступну команду для перевірки служби PHP-FPM.

sudo systemctl is-enabled php8.3-fpm
sudo systemctl status php8.3-fpm

Як встановити та налаштувати PyroCMS на Ubuntu 24.04

Нарешті, перевірте версію Composer за допомогою команди нижче. Ви побачите, що Composer 2.4.7 встановлено.

sudo -u www-data composer --version

Як встановити та налаштувати PyroCMS на Ubuntu 24.04

Налаштування PHP-FPM

Після того, як ви встановили залежності, ви налаштуєте PHP-FPM, змінивши деяку конфігурацію за замовчуванням через файл php.ini і перезапустивши службу PHP-FPM.

Відкрийте файл php.ini для PHP-FPM за допомогою наноредактора.

sudo nano /etc/php/8.3/fpm/php.ini

Змініть конфігурацію за замовчуванням за допомогою наведених нижче та налаштуйте параметри date.timezone та memory_limit відповідно до вашого поточного середовища.

date.timezone = Europe/Amsterdam
max_execution_time = 130
memory_limit = 256M
allow_url_fopen = On
allow_url_include = Off
post_max_size = 128M
upload_max_filesize = 128M
max_input_vars = 5000

Коли закінчите, збережіть файл і вийдіть з редактора.

Тепер виконайте наведену нижче команду systemctl, щоб перезапустити службу PHP-FPM і застосувати зміни до php.ini.

sudo systemctl restart php8.3-fpm

Налаштування сервера MariaDB

Тепер, коли ви налаштували PHP-FPM, ви забезпечите інсталяцію сервера MariaDB і створите нову базу даних і користувача для PyroCMS.

Захистіть інсталяцію сервера MariaDB за допомогою команди mariadb-secure-installation, наведеної нижче.

sudo mariadb-secure-installation

Вам буде запропоновано вибрати такі конфігурації:

  • Перейти на unix_socket автентифікацію? Введіть n і натисніть ENTER.
  • Користувач root MariaDB за замовчуванням вже захищений. За бажанням ви також можете увімкнути його, ввівши Y для Yes.
  • Змініть пароль root. Введіть y, щоб підтвердити та встановити новий кореневий пароль MariaDB.
  • Видалити анонімних користувачів? Введіть y для підтвердження.
  • Віддалено заборонити вхід root root? Введіть y для підтвердження. Буде дозволено тільки локальне з’єднання, якщо ви використовуєте MariaDB
  • Видаліть тестову базу даних і отримайте доступ до неї. Введіть y, щоб підтвердити та видалити ‘test’ бази даних за замовчуванням.
  • Нарешті, введіть y ще раз, щоб перезавантажити всі привілеї таблиці на вашому сервері MariaDB і застосувати нові зміни.

Після того, як ви налаштуєте MariaDB, ви створите нову базу даних та користувача для PyroCMS.

Увійдіть на сервер MariaDB за допомогою команди mariadb нижче. Введіть пароль root, коли з’явиться відповідний запит.

sudo mariadb -u root -p

Тепер виконайте наступні запити для створення нової бази даних pyrocmsdb, нового користувача pyrocms@localhost, і пароль passw0rd. За потреби змініть деталі імені бази даних, ім’я користувача та пароль.

CREATE DATABASE pyrocmsdb;
GRANT ALL PRIVILEGES ON pyrocmsdb.* TO pyrocms@localhost IDENTIFIED BY 'passw0rd';
FLUSH PRIVILEGES;

Як встановити та налаштувати PyroCMS на Ubuntu 24.04

Далі виконайте запит нижче, щоб перевірити привілеї для pyrocms@localhost користувача. Ви побачите, що база даних pyrocmsdb доступна за допомогою pyrocms@localhost користувача.

SHOW GRANTS FOR pyrocms@localhost;

Нарешті, введіть quit, щоб вийти з сервера MariaDB.

Як встановити та налаштувати PyroCMS на Ubuntu 24.04

Завантаження вихідного коду PyroCMS

Створіть нові директорії для Composer і PyroCMS, перейдіть до /var/www/pyrocms, а потім змініть власника нових директорій на користувача www-data. У цьому випадку /var/www/pyrocms буде використовуватися як корінь документа для PyroCMS.

mkdir -p /var/www/{.config,.cache,pyrocms}; cd /var/www/pyrocms
sudo chown -R www-data:www-data /var/www/{.config,.cache,pyrocms}

Тепер виконайте команду composer нижче, щоб завантажити вихідний код PyroCMS, а також встановити та оновити залежності PHP.

sudo -u www-data composer create-project pyrocms/pyrocms .
sudo -u www-data composer update

Нижче ви можете побачити установку PyroCMS через команду composer:

Як встановити та налаштувати PyroCMS на Ubuntu 24.04

Після завершення установки переходимо до наступного розділу.

Налаштування блоку сервера Nginx

У цьому розділі ви створите нову конфігурацію блоку сервера Nginx для встановлення PyroCMS. Тому переконайтеся, що у вас є доменне ім’я, яке вказує на IP-адресу вашого сервера Ubuntu. У цьому прикладі ви будете використовувати доменне ім’я infoit.local.

Створіть новий блок сервера Nginx /etc/nginx/sites-available/pyrocms.conf за допомогою редактора nano.

sudo nano /etc/nginx/sites-available/pyrocms.conf

Скопіюйте та вставте наведену нижче конфігурацію та обов’язково змініть server_name зі своїм доменним ім’ям.

server {
 listen 80;
 server_name hinfoit.local;

 index index.php index.html;
 root /var/www/pyro/public;
 
 location / {
  try_files $uri $uri/ /index.php?$args;
 }

 location ~ \.php$ {
  include fastcgi_params;
  fastcgi_pass unix:/run/php/php-8.3-fpm.sock;
  fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  fastcgi_index index.php;
 }
}

Коли закінчите, збережіть і закрийте файл.

Тепер виконайте наведену нижче команду, щоб створити символічне посилання файлу pyrocms.conf на директорію /etc/nginx/sites-enabled і перевірте свій синтаксис Nginx.

sudo ln -s /etc/nginx/sites-available/pyrocms.conf /etc/nginx/sites-enabled/
sudo nginx -t

Якщо у вас правильний синтаксис Nginx, ви побачите, що тест виводу test is successful – syntax is ok.

Як встановити та налаштувати PyroCMS на Ubuntu 24.04

Нарешті, виконайте наступну команду systemctl, щоб перезавантажити веб-сервер Nginx і застосувати зміни.

sudo systemctl restart nginx

Захист PyroCMS за допомогою HTTPS через Letsencrypt

Щоб захистити PyroCMS, вам потрібно впровадити HTTPS через Letsencrypt. Для цього ви повинні встановити Certbot для генерації сертифікатів SSL/TLS та автоматичного впровадження HTTPS у вашій інсталяції PyroCMS.

Встановіть пакети certbot і python3-certbot-nginx за допомогою наступної команди. Введіть Y, щоб підтвердити встановлення.

sudo apt install certbot python3-certbot-nginx

Тепер виконайте наведену нижче команду certbot, щоб згенерувати сертифікати SSL і захистити PyroCMS за допомогою HTTPS.

sudo certbot --nginx --agree-tos --no-eff-email --redirect --hsts --staple-ocsp --email admin@infoit.com.ua -d infoit.local

Після завершення процесу ви отримаєте свої сертифікати в директорії /etc/letsencrypt/live/domain.com, а ваша PyroCMS тепер захищена за допомогою HTTPS.

Встановлення PyroCMS за допомогою веб-інсталятора

Відкрийте веб-браузер і перейдіть на сторінку свого доменного імені, наприклад https://infoit.local/. Тепер ви побачите одну сторінку встановлення PyroCMS:

  • Виберіть Я згоден прийняти ліцензію на встановлення PyroCMS.
  • Введіть ім’я бази даних, користувача та пароль.
  • Введіть нового адміністратора, адресу електронної пошти та пароль для вашого PyroCMS.
  • Введіть дані сайту для встановлення, такі як доменне ім’я, мова та часовий пояс.
  • Натисніть «Встановити», щоб підтвердити інсталяцію.

Як встановити та налаштувати PyroCMS на Ubuntu 24.04 10

Після завершення інсталяції ви побачите наступну сторінку:

Як встановити та налаштувати PyroCMS на Ubuntu 24.04 10

Натисніть View Site, щоб отримати доступ до домашньої сторінки PyroCMS. Нижче ви можете побачити сторінку індексу за замовчуванням для PyroCMS.

Як встановити та налаштувати PyroCMS на Ubuntu 24.04 10

Натисніть  Login, щоб перейти на екран входу в PyroCMS. Введіть ім’я адміністратора та пароль, а потім натисніть Login.

Як встановити та налаштувати PyroCMS на Ubuntu 24.04 10

У разі успіху ви побачите панель адміністратора PyroCMS таким чином:

Як встановити та налаштувати PyroCMS на Ubuntu 24.04 10

Висновок

Вітаємо! Ви завершили встановлення PyroCMS на сервер Ubuntu 24.04. У вас встановлена PyroCMS зі стеком LEMP (Linux, Nginx, MySQL/MariaDB та PHP-FPM). Ви також завантажили PyroCMS з Composer і захистили PyroCMS за допомогою HTTPS через Certbot і Letsencrypt.

Прокрутка до верху