Перейти до вмісту
Блог › CMS › Установка WordPress на VPS

Установка WordPress на VPS

Згідно з оновленим рейтингом найкращих систем керування контентом (CMS) від відомого сервісу W3Techs, WordPress упевнено посідає лідируючі позиції як у загальному списку (43,1%), так і серед добре відомих CMS (63,0%). Така популярність сприяє широкому використанню системи для найрізноманітніших веб-проєктів — від блогу до інтернет-магазину. Як відомо, для роботи будь-якого з проєктів необхідна установка WordPress на VPS (Virtual Private Server) або віртуальний хостинг — залежно від ресурсомісткості сайту.

Розглянемо детальніше увесь процес встановлення WordPress на VPS під керуванням Ubuntu — від підготовки програмного середовища до запуску Консолі керування WordPress.

Необхідні умови для встановлення WordPress

Перед інсталяцією системи програмне середовище сервера має бути підготовлене так, щоб забезпечити узгоджену роботу технологічного стека типу LAMP, до якого входять:

  • Операційна система на основі Linux;
  • Вебсервер Apache;
  • Сервер баз даних MySQL;
  • Препроцесор гіпертексту PHP.

Лише за наявності цього комплексу технологій можлива повноцінна та відносно безпечна робота WordPress. Нижче розглянемо процес їхньої інсталяції та / або перевірки наявності в діючій системі.

Підготовка середовища LAMP

Для керування нашим VPS-сервером використовується ОС Ubuntu 22.04, яка належить до сімейства Linux-подібних систем, отже — одна з умов уже виконана.

Переходимо до встановлення сервера баз даних MySQL.

Установлення MySQL сервера

Спочатку оновимо індекс пакетів на сервері за допомогою команди:

$ sudo apt update

Бачимо, що 8 програмних пакетів можуть бути оновлені в системі. Тепер виконаємо встановлення серверного пакета MySQL. У цьому випадку інсталяція виконується без запиту на зміну конфігурації, зокрема без запиту пароля. Введемо в терміналі:

$ sudo apt install mysql-server

Підтверджуємо запит на використання 243 MB додаткового дискового простору, після чого процес інсталяції продовжується.

Як бачимо, встановлення пройшло успішно: «Setting up mysql-server (8.0.34-0ubuntu0.22.04.1)». Його версія — 8.0.34.

Під час первинного розгортання MySQL необхідно запустити скрипт безпеки, який дозволяє змінити значення деяких параметрів за замовчуванням. Це, наприклад, стосується вільного доступу до сервера анонімних (тестових) користувачів, що безпосередньо впливає на рівень безпеки системи. Суть роботи зі скриптом полягає у формуванні відповідей на низку послідовно виведених у терміналі запитань. Запуск скрипта здійснюється командою:

$ sudo mysql_secure_installation

Підтверджуємо дозвіл на автоматичну валідацію (перевірку) пароля входу, залежно від обраного рівня безпеки. Варіанти рівнів наведені нижче.

Обираємо рівень MEDIUM, при якому пароль має містити щонайменше 8 символів, включно з цифрами, латинськими літерами у верхньому та нижньому регістрі, а також спеціальними символами.

Забороняємо доступ до системи анонімним користувачам.

Залишаємо можливість віддаленого доступу до системи для користувача root.

Забороняємо доступ користувачів до тестової бази даних.

Підтверджуємо перезавантаження таблиці привілеїв для набуття чинності внесених змін.

У результаті встановлення сервера завершено успішно: «All done!».

Для входу в командний рядок керування сервером потрібно авторизуватися. Варто врахувати, що починаючи з версії MySQL 5.7, автентифікація користувачів із правами root відбувається автоматично за допомогою модуля auth_socket, що виключає використання пароля. У цьому випадку підключення до сервера здійснюється так:

$ sudo mysql

Тут же можна перевірити, яка версія сервера встановлена в системі: «Server version: 8.0.34».

Розглянутий варіант автентифікації є найбільш зручним і безпечним, однак іноді може знадобитися доступ за паролем. У такому разі потрібно змінити модуль автентифікації, наприклад, на caching_sha2_password.

Перевірити, який модуль автентифікації встановлено, можна командою:

SELECT user,authentication_string,plugin,host FROM mysql.user;

Можна переконатися, що для користувача root діє модуль auth_socket, як і очікувалось.

Щоб змінити його, введемо наступну команду в рядку керування сервером:

ALTER USER 'root'@'dedicated' IDENTIFIED WITH caching_sha2_password BY 'password';

де password — новий пароль користувача root.

Для цього методу автентифікації команда підключення до сервера виглядає так:

$ mysql -u root -p

Тепер адміністративні права можна отримати лише після введення пароля. Вийдемо з оболонки MySQL командою:

$ exit

Отже, компонент MySQL успішно встановлено.

Встановлення PHP

Для початку перевіримо, яка версія PHP на даний момент є актуальною в офіційному репозиторії Ubuntu. Це можна зробити за допомогою команди:

$ sudo apt show php

Бачимо, що поточною є: «PHP version (currently 8.1)».

Встановимо версію 8.1 з репозиторію:

$ sudo apt install php

Підтверджуємо виділення 29,5 MB дискового простору — процес встановлення продовжується.

Установка успішно завершена: «Setting up php 8.1».

Дізнатися встановлену версію можна за допомогою команди:

$ php -v

Щоб забезпечити взаємодію препроцесора PHP із вебсервером Apache, необхідно додатково встановити ще один пакет. Для цього введіть у терміналі:

$ sudo apt install libapache2-mod-php

Таким чином, ще один компонент зв’язки LAMP успішно встановлено та підготовлено до роботи з вебсервером.

Встановлення вебсервера Apache

Вебсервер Apache завжди доступний для встановлення з офіційних репозиторіїв Ubuntu. Спочатку потрібно оновити індекс локальних пакетів, як ми вже робили раніше:

$ sudo apt update

Після цього встановлюємо потрібний пакет:

$ sudo apt install apache2

Як бачимо, цей компонент LAMP уже був встановлений раніше на нашій машині. Його версія — 2.4.52.

Під час встановлення вебсервер автоматично реєструється в UFW (Uncomplicated Firewall), надаючи кілька профілів для налаштування доступу через брандмауер.

Виведемо список доступних профілів. Для цього введіть у терміналі:

$ sudo ufw app list

У списку буде представлено три різні профілі:

  • Apache;
  • Apache Full;
  • Apache Secure.

Останні два є більш захищеними та вимагають наявності SSL-сертифіката. Ми підключимо профіль Apache, який відкриває порт 80 без використання шифрування даних. Для цього виконайте команду:

$ sudo ufw allow 'Apache'

У результаті правила брандмауера були оновлені, і активним став профіль Apache.

Перевірити статус вебсерверу можна за допомогою команди:

$ sudo systemctl status apache2

Таким чином, наш вебсервер встановлено й підготовлено до роботи.

Розгортання CMS WordPress

Процес розгортання системи можна розділити на кілька етапів:

  • Створення бази даних;
  • Створення нового користувача та налаштування його прав;
  • Вибір версії програми та її завантаження на сервер;
  • Розпакування архіву та встановлення прав доступу до основного каталогу WordPress;
  • Продовження установки у браузері;
  • Авторизація в Консолі керування WordPress.

Переходимо до практичної реалізації зазначених етапів.

Створення бази даних

Щоб виконувати будь-які дії з керування MySQL, необхідно авторизуватися в ньому. Для користувача root це можуть бути такі команди, залежно від встановленого методу автентифікації:

$ mysql -u root –p (вхід за паролем) 
$ sudo mysql (вхід через сокет)

Створимо базу даних під назвою bazawp. Це робиться командою:

> CREATE DATABASE bazawp;

База успішно створена.

Створення нового користувача та налаштування його прав

Користувача для керування базою можна створити командою:

> CREATE USER 'inhosting'@'dedicated' IDENTIFIED BY 'newparol75N!';

де inhosting – ім’я користувача, а newparol75N! – його пароль для доступу до системи.

Нагадаємо, що пароль має відповідати встановленому раніше рівню безпеки MEDIUM. Лише тоді система його прийме.

Надаємо користувачу повні права на роботу з базою:

> GRANT ALL PRIVILEGES ON bazawp.* TO 'inhosting'@'dedicated';

Зберігаємо зміни:

> FLUSH PRIVILEGES;

Права успішно збережено.

Виходимо з MySQL:

> exit

Далі необхідно перезапустити вебсервер Apache, щоб застосувати налаштування:

$ /etc/init.d/apache2 restart

Вибір версії програми та її завантаження на сервер

Для вибору потрібної версії перейдіть на сайт розробників WordPress. Там можна обрати актуальну українську або англійську версію з гілки 6.3. Посилання на архів формату tar.gz можна скопіювати правою кнопкою миші.

Переходимо в каталог для зберігання файлів і завантажуємо архів:

$ cd /var/www/html $ wget https://ru.wordpress.org/wordpress-6.3.2-ru_RU.tar.gz.sha1

Файл успішно завантажено на сервер.

Розпакування архіву та встановлення прав

Розпаковуємо архів командою:

$ tar –xzvf wordpress-6.3.2-ru_RU.tar.gz.sha1

Після цього встановлюємо права доступу до каталогу wp-content:

$ chmod -R 777 /var/www/html/wordpress/wp-content

Права встановлено успішно.

Перезапускаємо Apache:

$ /etc/init.d/apache2 restart

Продовження установки в браузері

Щоб продовжити встановлення WordPress, у браузері введіть посилання у форматі:

http://ip_адреса_vps_сервера/wordpress/wp-admin/setup-config.php

Після натискання кнопки «Вперед» потрібно ввести дані користувача та бази даних, створені раніше. Якщо автоматичне створення файлу wp-config.php не вдалося, його можна створити вручну через редактор nano:

$ cd /var/www/html 
$ nano wp-config.php

У вставлений файл потрібно додати код, запропонований у браузері, зберегти зміни й повернутися до браузера, щоб продовжити встановлення, натиснувши «Запустити установку».

Авторизація в Консолі керування WordPress

Після завершення інсталяції WordPress запропонує увійти в панель керування (Консоль).

Після авторизації користувач отримає повний доступ до адмінпанелі WordPress.

Таким чином, WordPress був успішно встановлений на VPS-сервер під керуванням Ubuntu 22.04.

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

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *