Please use this identifier to cite or link to this item:
https://er.chdtu.edu.ua/handle/ChSTU/7286Full metadata record
| DC Field | Value | Language |
|---|---|---|
| dc.contributor.advisor | БАБЕНКО, Віра | - |
| dc.contributor.author | ЛАВРІНЕНКО, Юрій | - |
| dc.date.accessioned | 2026-03-08T15:32:13Z | - |
| dc.date.available | 2026-03-08T15:32:13Z | - |
| dc.date.issued | 2025 | - |
| dc.identifier.uri | https://er.chdtu.edu.ua/handle/ChSTU/7286 | - |
| dc.description.abstract | Метою виконання даної кваліфікаційної роботи на здобуття освітнього ступеня «бакалавр» є проектування системи керування контентом для малих бізнесів з будованими інструментами SEO-оптимізації. Загальний обсяг роботи становить 81 сторінка. У роботі 11 рисунків. Для виконання роботи використано 25 літературних джерел. Головне завдання – це проєктування та розробка системи керування контентом (CMS), орієнтованої на потреби малого бізнесу, яка забезпечує можливість швидкого створення вебсайту з функціоналом електронної комерції, інтеграцією з популярними платіжними сервісами та вбудованими інструментами SEO-оптимізації для ефективного онлайн-просування товарів і послуг. Стислий опис розділів кваліфікаційної роботи бакалавра складається з аналізу предметної області та постановки задачі; вибору технологій та інструментальних засобів; розробка інформаційної системи пошуку важливих новин з використання штучного інтелекту. | uk_UA |
| dc.subject | CMS | uk_UA |
| dc.subject | МАЛИЙ БІЗНЕС | uk_UA |
| dc.subject | SEO-ОПТИМІЗАЦІЯ | uk_UA |
| dc.subject | ЕЛЕКТРОННА КОМЕРЦІЯ | uk_UA |
| dc.subject | ВЕБРОЗРОБКА | uk_UA |
| dc.subject | ПЛАТІЖНІ СИСТЕМИ | uk_UA |
| dc.subject | LIQPAY | uk_UA |
| dc.subject | УПРАВЛІННЯ КОНТЕНТОМ | uk_UA |
| dc.subject | ІНТЕГРАЦІЯ | uk_UA |
| dc.subject | ПРОСУВАННЯ САЙТУ | uk_UA |
| dc.title | Система керування контентом для малих бізнесів з вбудованими інструментами SEO-оптимізації | uk_UA |
| dc.type | Bachelor Thesis | uk_UA |
| Appears in Collections: | 123 Комп’ютерна інженерія (Комп'ютерні системи та мережі) | |
Files in This Item:
| File | Description | Size | Format | |
|---|---|---|---|---|
| 1__ТИТУЛКА_Лавріненко-merged.pdf Restricted Access | 2.52 MB | Adobe PDF | View/Open Request a copy |
Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.
Extracted text
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
ЧЕРКАСЬКИЙ ДЕРЖАВНИЙ ТЕХНОЛОГІЧНИЙ УНІВЕРСИТЕТ
ФАКУЛЬТЕТ ІНФОРМАЦІЙНИХ ТЕХНОЛОГІЙ І СИСТЕМ
КАФЕДРА ІНФОРМАЦІЙНОЇ БЕЗПЕКИ ТА КОМП’ЮТЕРНОЇ ІНЖЕНЕРІЇ
ПОЯСНЮВАЛЬНА ЗАПИСКА
до кваліфікаційної роботи бакалавра
на тему: «Система керування контентом для
малих бізнесів з вбудованими інструментами
SEO-оптимізації»
ЧДТУ.252181.006 ПЗ
Виконав: студент 4 курсу, групи КМ-2105
спеціальності 123 – «Комп’ютерна інженерія»
за освітньою програмою – «Комп’ютерні системи
та мережі»
Юрій ЛАВРІНЕНКО
Керівник
д.т.н., професор
Віра БАБЕНКО
Рецензент
к.т.н., доцент
Марія ЗАХАРОВА
«ЗАХИСТ ДОЗВОЛЯЮ»
Завідувач кафедри ІБ та КІ
д.т.н., професор ___________ Віра БАБЕНКО
Черкаси 2025 року
Форма № Н-9.01
ЧЕРКАСЬКИЙ ДЕРЖАВНИЙ ТЕХНОЛОГІЧНИЙ УНІВЕРСИТЕТ
Факультет: інформаційних технологій і систем
Кафедра: інформаційної безпеки та комп’ютерної інженерії
Освітньо-кваліфікаційний рівень: Бакалавр
Спеціальність 123 – Комп’ютерна інженерія
Освітня програма Комп’ютерні системи та мережі
«ЗАТВЕРДЖУЮ»
Завідувач кафедри ІБ та КІ
д.т.н., професор _____________ Віра БАБЕНКО
«28» лютого 2025 року
ЗАВДАННЯ
на кваліфікаційну роботу бакалавра студенту
Лавріненко Юрію Ярославовичу
(прізвище, ім‘я, по батькові)
1. Тема роботи: Система керування контентом для малих бізнесів з вбудованими
інструментами SEO-оптимізації
Керівник роботи: д.т.н., професор Бабенко Віра Григорівна
(прізвище, ім’я, по батькові, науковий ступінь, вчене звання)
затверджені наказом університету від «25» лютого 2025 р. № 53/03-03
2. Строк подання студентом роботи:
3. Вихідні дані до роботи:
CMS, малий бізнес, SEO-оптимізація, електронна комерція, веброзробка, платіжні системи,
LiqPay, управління контентом, інтеграція, просування сайту.
4. Зміст розрахунково-пояснювальної записки (перелік питань, що їх належить розробити):
Вступ
1. Аналіз предметної області та постановка задачі
2. Вибір технологій та інструментальних засобів
3. Розробка системи керування контентом для малих бізнесів з будованими інструментами
SEO-оптимізації
4. Захист системи керування контентом для малих бізнесів з будованими
інструментами SEO-оптимізації
Висновки
Додатки
Список використаних джерел
5. Перелік графічного матеріалу (з точним зазначенням обов’язкових креслень, плакатів):
Додаток А Специфікація
Додаток Б Текст програм
Додаток В Інструкція користувача
6. Консультанти розділів роботи:
Розділ Прізвище, ініціали Підпис, дата
консультанта завдання видав завдання прийняв
7. Дата видачі завдання: 28 лютого 2025 року
КАЛЕНДАРНИЙ ПЛАН
Термін
№ з/п Назва етапів роботи виконання Примітка
етапів роботи
1 Збір матеріалу 01.03 – 14.03 виконано
2 Обробка матеріалу 15.03 – 20.03 виконано
3 Обґрунтування актуальності виконання досліджень 21.03 - 25.03 виконано
4 Оцінка стану проблеми, виокремлення дослідницьких виконано
задач, постановка задачі дослідження 26.03 – 01.04
5 Викладення сутності і результатів дослідження 03.04 – 08.04 виконано
6 Практичне застосування результатів дослідження 09.04 – 27.04 виконано
7 Оформлення результатів в пояснювальну записку 28.04 – 02.05 виконано
8 Подання роботи на відгук та рецензування 15.05 – 20.05 виконано
Студент ___________________________ Юрій ЛАВРІНЕНКО
(підпис)
Керівник роботи ___________________________ Віра БАБЕНКО
(підпис)
АНОТАЦІЯ
Метою виконання даної кваліфікаційної роботи на здобуття освітнього
ступеня «бакалавр» є проектування системи керування контентом для малих
бізнесів з будованими інструментами SEO-оптимізації.
Загальний обсяг роботи становить 81 сторінка. У роботі 11 рисунків. Для
виконання роботи використано 25 літературних джерел.
Головне завдання – це проєктування та розробка системи керування
контентом (CMS), орієнтованої на потреби малого бізнесу, яка забезпечує
можливість швидкого створення вебсайту з функціоналом електронної комерції,
інтеграцією з популярними платіжними сервісами та вбудованими
інструментами SEO-оптимізації для ефективного онлайн-просування товарів і
послуг.
Стислий опис розділів кваліфікаційної роботи бакалавра складається з
аналізу предметної області та постановки задачі; вибору технологій та
інструментальних засобів; розробка інформаційної системи пошуку важливих
новин з використання штучного інтелекту.
Ключові слова: CMS, МАЛИЙ БІЗНЕС, SEO-ОПТИМІЗАЦІЯ,
ЕЛЕКТРОННА КОМЕРЦІЯ, ВЕБРОЗРОБКА, ПЛАТІЖНІ СИСТЕМИ, LIQPAY,
УПРАВЛІННЯ КОНТЕНТОМ, ІНТЕГРАЦІЯ, ПРОСУВАННЯ САЙТУ
ANOTATION
The purpose of this qualification work for the degree of Bachelor is to design a
content management system for small businesses with built-in SEO optimization tools.
The total volume of the work is 81 pages. The work contains 11 figures. 25
literary sources were used to perform the work.
The main task is to design and develop a content management system (CMS)
focused on the needs of small businesses, which provides the ability to quickly create
a website with e-commerce functionality, integration with popular payment services
and built-in SEO optimization tools for effective online promotion of goods and
services.
A brief description of the sections of the bachelor's qualification work consists
of an analysis of the subject area and problem statement; selection of technologies and
tools; development of an information system for searching for important news using
artificial intelligence.
Key words: CMS, SMALL BUSINESS, SEO OPTIMIZATION, E-
COMMERCE, WEB DEVELOPMENT, PAYMENT SYSTEMS, LIQPAY,
CONTENT MANAGEMENT, INTEGRATION, WEBSITE PROMOTION
ЗМІСТ
ВСТУП……………………………………………………………………………..4
1 АНАЛІЗ ПРЕДМЕТНОЇ ОБЛАСТІ ТА ПОСТАНОВКА ЗАДАЧІ…….…...7
1.1 Аналіз існуючих систем………………………...………….…………..7
1.2 Постановка задачі………...………………………………………...…10
1.3 Висновок до розділу…… ………………………………….…………16
2 ВИБІР ТЕХНОЛОГІЙ ТА ІНСТРУМЕНТАЛЬНИХ ЗАСОБІВ……….......17
2.1 Огляд існуючих технологій……………………………….………….17
2.2 Обґрунтування вибору…..………………………………………...….24
2.3 Висновок до розділу ……………………………………….…………30
3 РОЗРОБКА СИСТЕМИ КЕРУВАННЯ КОНТЕНТОМ ДЛЯ МАЛИХ
БІЗНЕСІВ З БУДОВАНИМИ ІНСТРУМЕНТАМИ SEO-
ОПТИМІЗАЦІЇ………………………………………………………………..31
3.1 Структура системи……………...………………………………..…...31
3.2 Опис функцій системи………………………………………………..36
3.3 Технічні вимоги для роботи з системою……………………………..41
3.4 Оцінка ефективності………………………………………………….43
3.5 Висновки до розділу…………………………………………………..45
4 ЗАХИСТ СИСТЕМИ КЕРУВАННЯ КОНТЕНТОМ ДЛЯ МАЛИХ
БІЗНЕСІВ З БУДОВАНИМИ ІНСТРУМЕНТАМИ SEO-
ОПТИМІЗАЦІЇ……..……………………………………..…..………..…….46
4.1 Огляд існуючих рішень …………………..………….……………….46
4.2 Реалізація захисту даних користувачів……………………….….…..52
4.3 Висновки до розділу…………..…………………………….…….…..56
ЧДТУ.252181.006 ПЗ
Змн. Арк. № докум. Підпис Дата
РозрКобив Лавріненко Система керування Літ. Лист Листів
Керівник ЮБа.Яб.енко В.Г. контентом для малих бізнесів 2 81
Рецеанзент Захарова М.В. з будованими інструментами
Н.Контроль Гресько С.О. SEO-оптимізації Кафедра ІБ та КІ
Затвфердив Бабенко В.Г. Пояснювальна записка гр. КМ-2105
е
д
р
а
К
К
-
0
6
ВИСНОВКИ……………………………………………………………………...57
ДОДАТКИ:
А – 482.ЧДТУ.52181.01 Система керування контентом для малих
бізнесів з будованими інструментами SEO-оптимізації
СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ……………………………...………...80
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 3
ВСТУП
Актуальність теми. У сучасних умовах цифрової трансформації
бізнесу наявність онлайн-платформи є ключовою складовою успішної
діяльності малих підприємств. Вебсайт не лише виконує роль вітрини товарів
та послуг, а й є інструментом комунікації з клієнтами, каналом продажів і
засобом просування на ринку. Однак більшість наявних систем керування
контентом (CMS), як-от WordPress чи Joomla, вимагають від користувачів
певних технічних знань для налаштування, інтеграції платіжних систем або
оптимізації контенту для пошукових систем (SEO).
Особливої актуальності набуває створення CMS, спеціалізованої саме
для потреб малого бізнесу. Така система має бути простою у використанні,
мати вбудовані засоби електронної комерції (додавання товарів, оформлення
замовлень, підключення платіжних систем) і забезпечувати базову SEO-
оптимізацію без потреби залучення сторонніх фахівців. Це дає змогу
підприємцям зосередитися на бізнесі, не витрачаючи ресурси на технічну
реалізацію онлайн-продажів і просування.
Крім того, на тлі зростання конкуренції в інтернет-просторі, саме
доступність SEO-інструментів у CMS дає малим компаніям змогу ефективно
позиціонувати свої товари в пошукових системах, що напряму впливає на
продажі. Інтеграція з українськими платіжними системами (LiqPay, Portmone,
UAPAY) робить систему адаптованою до локального ринку.
Таким чином, розробка спеціалізованої CMS із вбудованими SEO-
інструментами та підтримкою електронної комерції є надзвичайно актуальним
завданням, що сприяє цифровізації малого бізнесу та підвищенню його
конкурентоспроможності.
Метою кваліфікаційної роботи є проєктування та розробка системи
керування контентом для малих бізнесів, яка забезпечує зручне управління
веб-сайтом, можливість додавання товарів для онлайн-продажу, інтеграцію з
популярними платіжними системами та вбудовані інструменти SEO-
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 4
оптимізації для ефективного просування товарів і послуг у пошукових
системах.
Для досягнення сформульованої мети необхідно вирішити такі задачі:
1. Проаналізувати існуючі системи керування контентом (CMS), їх
переваги та обмеження у контексті потреб малих бізнесів;
2. Визначити вимоги до функціоналу CMS, орієнтованої на малий бізнес,
включаючи інструменти SEO, управління товарами та інтеграцію з
платіжними сервісами;
3. Розробити архітектуру системи та структуру бази даних з урахуванням
вимог до масштабованості та зручності використання;
4. Реалізувати модулі керування контентом, каталогом товарів і
оформлення замовлень;
5. Забезпечити інтеграцію системи з популярними платіжними сервісами
(зокрема, LiqPay, Portmone, UAPAY);
6. Реалізувати інструменти для базової SEO-оптимізації контенту (мета-
теги, генерація SEO-дружніх URL, карта сайту тощо);
7. Провести тестування розробленої системи на відповідність
функціональним вимогам та зручність для кінцевого користувача;
8. Оцінити ефективність використання системи для представлення товарів
малого бізнесу в інтернеті.
Одна з найкращих книг, яка глибоко розкриває тему створення систем
керування контентом (CMS) з вбудованими SEO-інструментами для малого
бізнесу, — це «SEO for Growth: The Ultimate Guide for Marketers, Web Designers
& Entrepreneurs» авторів Філа Сінглтона та Джона Джантча. У книзі автори
акцентують увагу на важливості інтеграції SEO на етапі проєктування
вебсайтів, особливо для підприємців та невеликих компаній, які прагнуть бути
помітними в інтернеті. Видання охоплює ключові теми, зокрема побудову
SEO-дружнього дизайну, ефективний контент-маркетинг, локальне SEO, а
також правильне використання CMS для досягнення маркетингових цілей.
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 5
Книга отримала визнання як одне з найкращих практичних посібників у своїй
галузі, і буде особливо корисною для роботи, адже надає приклад того, як
технічні рішення в CMS можуть напряму впливати на просування бізнесу в
мережі.
Одержані в кваліфікаційній роботі результати мають практичне
значення та полягає у створенні функціональної та зручною у використанні
системи керування контентом (CMS), адаптованої під потреби малого бізнесу.
Розроблена система дозволяє підприємцям швидко запускати власні веб-сайти
з можливістю додавання товарів, інтеграцією платіжних сервісів (таких як
LiqPay, Portmone, UAPAY) та використанням базових SEO-інструментів без
залучення сторонніх фахівців. Це дає змогу зменшити витрати на розробку
сайту, пришвидшити вихід на ринок, покращити видимість у пошукових
системах і, як наслідок, — збільшити продажі та розширити аудиторію
клієнтів. Система може бути використана як основа для комерційного
продукту, впроваджена в реальних бізнес-процесах або доопрацьована під
конкретні галузі (наприклад, інтернет-магазини, послуги, локальні сервіси).
Кваліфікаційна робота складається з 4-х розділів, яких подається
інформація про:
1. Обрану предметну область дослідження та про постановку проблема;
2. Огляд існуючих технологій, за допомогою яких можна реалізувати
подібну систему та обґрунтування вибору тієї чи іншої технології;
3. Реалізацію системи: відображення структури системи, опис функцій
кожної частини системи, технічні вимоги до системи а також практична
оцінка ефективності роботи;
4. Розробка захисту інформації для системи.
Використана література, під час написання кваліфікаційної роботи,
досить добре розкриває основні методики та підходи для розробки подібних
автоматизованих систем.
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 6
1 АНАЛІЗ ПРЕДМЕТНОЇ ОБЛАСТІ ТА ПОСТАНОВКА ЗАДАЧІ
1.1 Аналіз існуючих систем
Системи керування контентом (CMS – Content Management Systems) є
невід’ємною частиною сучасної веброзробки, оскільки дозволяють
користувачам без глибоких технічних знань створювати, редагувати та
публікувати контент на сайтах. Серед найпопулярніших CMS можна виділити
такі платформи, як WordPress, Joomla, Drupal, Wix та інші. Усі ці системи
мають свої переваги, однак більшість із них були спочатку орієнтовані на
публікацію текстового контенту, зокрема ведення блогів або новинних
стрічок.
Найбільш відомою CMS у світі є WordPress, яка займає понад 40% ринку
сайтів у мережі. Вона була створена в 2003 році як платформа для блогерів і
досі має у своїй основі структуру, орієнтовану на створення та публікацію
статей, керування категоріями, тегами, коментарями тощо. Зовнішній вигляд
WordPress зображено на рисунку 1.1.
Рисунок 1.1 – Word Press
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 7
Незважаючи на те, що функціональність WordPress значно розширилась
завдяки тисячам плагінів і шаблонів, її базова архітектура залишається
орієнтованою на контент, а не на бізнес-процеси, такі як управління товарами,
складським обліком або інтеграцію з локальними платіжними системами.
Для запуску інтернет-магазину на WordPress зазвичай використовують
плагін WooCommerce, який дозволяє додавати товари, керувати замовленнями
та налаштовувати платіжні методи. Однак цей плагін не є частиною основної
системи, а отже потребує додаткового налаштування, оновлень та технічної
підтримки. До того ж, підтримка українських платіжних систем, таких як
LiqPay чи UAPAY, вимагає встановлення сторонніх модулів або кастомної
розробки, що не завжди зручно для малого бізнесу без ІТ-фахівців.
Також важливо зазначити, що системи на кшталт WordPress або Joomla
часто містять надлишковий функціонал або складну адмін-панель, що
ускладнює користування ними для підприємців-початківців. Їм доводиться
витрачати час на вивчення документації, встановлення та конфігурацію
численних модулів, що знижує ефективність запуску бізнесу онлайн.
Таким чином, хоча існуючі CMS, зокрема WordPress, є потужними
платформами для створення блогів і простих сайтів, їх використання у сфері
малого бізнесу потребує значних зусиль на адаптацію. Це створює попит на
нові, більш прості у використанні та спеціалізовані системи, які спочатку
розробляються з урахуванням потреб малого бізнесу, інтеграції з локальними
сервісами та підтримки SEO-функціоналу без складної конфігурації.
Існуючі системи керування контентом, такі як WordPress, Joomla чи
Drupal, надають користувачам можливість розширювати базовий функціонал
за допомогою численних плагінів або модулів. Ці додаткові компоненти
дозволяють реалізувати широкий спектр задач — від інтеграції платіжних
систем та створення інтернет-магазинів до впровадження SEO-інструментів,
аналітики та соціальних функцій [1]. Така модульність робить CMS дуже
гнучкими та привабливими для різних користувачів із різними потребами.
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 8
Проте, водночас використання великої кількості плагінів значно збільшує
складність системи як з технічної, так і з користувацької точки зору. Кожен
додатковий плагін може викликати конфлікти з іншими компонентами,
уповільнювати роботу сайту, створювати уразливості з точки зору безпеки та
потребувати регулярних оновлень і технічної підтримки. Для малого бізнесу,
який не має власного ІТ-відділу, це створює серйозні труднощі у підтримці
стабільної роботи сайту. Крім того, користувачам доводиться витрачати час
на навчання, налаштування і тестування плагінів, що може відволікати від
основних бізнес-завдань. Таким чином, хоча плагіни і дозволяють розширити
функціонал існуючих CMS, вони водночас збільшують загальну складність
системи, що не завжди відповідає потребам малого бізнесу, який прагне
швидко та просто керувати своїм сайтом без зайвих технічних бар’єрів.
Для малого бізнесу особливо важливо мати можливість швидко
розпочати свою діяльність в онлайн-просторі без значних витрат часу, грошей
і спеціальних технічних знань. Підприємці часто працюють із обмеженими
ресурсами, тому вони не можуть дозволити собі довгі процеси розробки сайту,
залучення великої команди розробників чи постійного вирішення технічних
проблем. Вони прагнуть отримати простий, зрозумілий і функціональний
інструмент, який дозволить у найкоротші терміни створити власний вебсайт,
додати товари чи послуги для продажу, налаштувати оплату і розпочати
працювати з клієнтами.
Наявність складних систем, що вимагають глибоких знань або
додаткових налаштувань, може стати суттєвою перешкодою для малого
бізнесу. Часто власники не мають досвіду в програмуванні або
адмініструванні вебресурсів, тому вони потребують платформи з інтуїтивно
зрозумілим інтерфейсом і готовими рішеннями, які дозволяють легко керувати
контентом, товарами та замовленнями [2]. Важливо, щоб система мала
мінімальну кількість необхідних налаштувань, при цьому включала всі
необхідні базові функції, зокрема вбудовані інструменти SEO для покращення
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 9
видимості сайту в пошукових системах. Це дає можливість бізнесу самостійно
просувати свої товари без додаткових затрат на сторонніх спеціалістів.
Крім того, швидкий запуск сайту з мінімальними зусиллями дає
можливість підприємцям зосередитись на розвитку бізнесу, залученні клієнтів
та покращенні продуктів, а не на технічних аспектах роботи вебсайту. Це
підвищує конкурентоспроможність малого бізнесу в умовах сучасної
цифрової економіки, де час виходу на ринок і якість онлайн-присутності
відіграють вирішальну роль. Отже, розробка та впровадження простої і
зручною CMS, яка забезпечує швидкий старт і мінімальні зусилля для
користувачів, є ключовим фактором підтримки малого бізнесу в онлайн-
середовищі.
1.2 Постановка задач
Системи керування контентом (CMS) значно полегшують процес
створення та управління вебсайтами для початківців, які не мають спеціальних
технічних знань або досвіду в програмуванні. По-перше, CMS пропонують
інтуїтивно зрозумілий графічний інтерфейс, який дозволяє користувачам
легко додавати, редагувати або видаляти різноманітний контент — тексти,
зображення, відео та інші елементи — без необхідності писати код чи
працювати з технічними деталями сайту. Завдяки цьому навіть люди без
навичок розробки можуть самостійно створювати і підтримувати свої
вебресурси.
Більшість популярних CMS поставляються з великою кількістю готових
шаблонів дизайну, які можна використовувати як основу для сайту. Це
дозволяє швидко створити професійний і привабливий зовнішній вигляд
вебсторінки без залучення вебдизайнерів або витрат часу на розробку
унікального дизайну з нуля. Для початківців це означає значну економію
ресурсів і можливість зосередитися на наповненні сайту корисним контентом.
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 10
CMS часто містять вже вбудовані базові функції, необхідні для
ефективної роботи сайту, такі як інструменти SEO-оптимізації, управління
користувачами, інтеграція із соціальними мережами та аналітика відвідувань.
Це дозволяє новачкам відразу робити свій ресурс більш помітним у
пошукових системах, залучати аудиторію і аналізувати ефективність сайту
без додаткових технічних знань або дорогих сервісів.
Крім того, велика і активна спільнота користувачів CMS забезпечує
постійну підтримку і розробку нових плагінів, розширень та навчальних
матеріалів. Це значно полегшує процес пошуку рішень на технічні питання і
дає можливість початківцям швидко розв’язувати проблеми, що виникають у
процесі роботи із сайтом.
Отже, завдяки простоті у використанні, готовим шаблонам, вбудованим
інструментам і активній спільноті, CMS роблять створення і підтримку
вебсайтів доступним і зрозумілим процесом навіть для тих, хто тільки починає
свій шлях у сфері веброзробки або ведення онлайн-бізнесу. Це знижує бар’єри
входу у цифровий простір і дозволяє зосередитись на головному — розвитку
бізнесу та взаємодії з клієнтами.
У сучасному конкурентному середовищі для малого та середнього
бізнесу особливо важливо мати можливість швидко та ефективно організувати
процес продажів. Основною метою кожного бізнесу є отримання прибутку, а
отже — налагодження стабільного потоку продажів. Відсутність швидкого та
зручного інструменту для реалізації товарів або послуг може призвести до
втрати клієнтів, уповільнення розвитку бізнесу та зниження
конкурентоспроможності.
Швидкість продажу означає, що клієнт може безперешкодно перейти з
моменту зацікавленості товаром до завершення покупки. Це охоплює повний
цикл — від першого знайомства з продуктом на сайті до оформлення
замовлення та здійснення оплати. Якщо на будь-якому з цих етапів виникає
складність (повільне завантаження сторінки, незрозумілий інтерфейс, складна
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 11
форма замовлення чи обмежені способи оплати), клієнт легко може
відмовитися від покупки на користь конкурента. Тому бізнесу потрібно мати
зручну, логічну та швидку систему продажів, яка мінімізує зусилля клієнта.
Ефективність продажів включає не тільки саму технічну реалізацію
покупки, а й наявність інструментів для залучення клієнтів, таких як SEO,
аналітика, персоналізовані пропозиції, промокоди та знижки. Бізнесу потрібна
система, яка дозволяє відстежувати поведінку користувачів, аналізувати їхні
дії, а також швидко адаптувати пропозиції до поточних потреб ринку. Це
можливо тільки у разі, коли інструменти для просування та аналізу вже
інтегровані у систему і не потребують додаткових налаштувань чи знань.
Важливою умовою для ефективного продажу є наявність повної
інтеграції з популярними платіжними системами, такими як LiqPay, Portmone,
UAPAY та іншими. Це забезпечує клієнту можливість оплачувати товари
зручною для нього формою — карткою, електронним гаманцем або інтернет-
банкінгом. Чим менше бар’єрів на шляху до покупки, тим вища ймовірність
завершення транзакції.
Окрім того, бізнес має потребу в простому управлінні товарами,
можливості швидко додавати нові позиції, змінювати описи, ціни, фото,
залишки на складі тощо — без залучення технічних спеціалістів. Це особливо
актуально для невеликих компаній або індивідуальних підприємців, які
самостійно ведуть свій онлайн-магазин.
Для сучасного бізнесу критично важливо мати рішення, яке забезпечує
швидкий запуск продажів, інтуїтивне управління товарами, зручний процес
оформлення замовлення, вбудовану підтримку SEO та аналітики, а також
інтеграцію з платіжними сервісами. Така система дозволяє не тільки почати
продавати швидко, а й робити це ефективно — із мінімальними витратами
часу та зусиль, максимізуючи прибуток і задоволення клієнтів.
З огляду на потреби малого бізнесу у швидкому старті, ефективному
управлінні продажами та мінімальних технічних складностях, логічним
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 12
рішенням є створення спеціалізованої системи, яка дозволить швидко та
просто створювати повноцінні комерційні вебсайти. Така система повинна
поєднувати в собі всі ключові інструменти, необхідні для ведення бізнесу в
інтернеті, без потреби у складній розробці, встановленні десятків плагінів чи
налаштуванні сторонніх сервісів.
По суті, мова йде про спрощену, але функціональну CMS-систему, яка
орієнтована саме на малий бізнес. Вона має забезпечити можливість створення
сайту за лічені години або навіть хвилини — без залучення програмістів,
дизайнерів чи системних адміністраторів. Інтерфейс такої системи повинен
бути інтуїтивно зрозумілим, а функціонал — адаптованим під завдання
бізнесу: представлення товарів, управління замовленнями, підключення
платіжних систем і основні інструменти просування.
Головною відмінністю такої системи від універсальних рішень на зразок
WordPress має стати саме вбудована логіка продажу — тобто користувач із
самого початку отримує не просто блог чи “порожній шаблон”, а сайт, готовий
до комерційної діяльності. Усі налаштування SEO, способи доставки, методи
оплати, фільтри товарів, кошик і система обробки замовлень повинні бути вже
реалізовані або доступні “з коробки”.
Окрім цього, система повинна мати інструменти масштабування —
можливість підключення додаткових функцій за потреби (наприклад,
звітність, CRM-інтеграції, e-mail-розсилки тощо), але без ускладнення
основного інтерфейсу для тих, хто хоче просто почати і продавати. Гнучкість,
простота та орієнтація на результат — це ті принципи, які повинні лежати в
основі такої розробки.
Таким чином, створення спеціалізованої системи керування контентом
з вбудованими можливостями для продажу дозволить малому бізнесу
мінімізувати витрати часу, зусиль та коштів при запуску свого інтернет-
магазину. Це рішення допоможе підприємцям зосередитись не на технічних
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 13
деталях, а на просуванні свого продукту та роботі з клієнтами, що є головним
чинником успіху в сучасній цифровій економіці.
Однією з ключових переваг розроблюваної системи управління
контентом для малого бізнесу є наявність вбудованих інструментів для
прийому платежів, що дозволяє одразу після створення сайту почати реальні
продажі товарів або послуг. Бізнес не повинен витрачати додатковий час і
ресурси на інтеграцію платіжних систем вручну або на замовлення таких
послуг у сторонніх розробників. У системі передбачено інтеграцію з
популярними українськими платіжними сервісами, такими як LiqPay,
Portmone, UAPAY, що дозволяє швидко та безпечно приймати онлайн-платежі
від клієнтів банківськими картками, через мобільні додатки чи інтернет-
банкінг.
Така інтеграція забезпечує надійний, безпечний і прозорий процес
оплати, що особливо важливо для довіри з боку покупців. Усі транзакції
відбуваються відповідно до вимог сучасних стандартів безпеки (наприклад,
PCI DSS), а сам підприємець може бачити всю історію платежів, замовлень і
статусів у зручній адміністративній панелі.
Крім того, не менш важливою складовою є наявність SEO-функціоналу,
який дозволяє забезпечити видимість сайту в пошукових системах, таких як
Google чи Bing. У системі буде реалізовано набір базових, але ефективних
SEO-інструментів, зокрема:
1. можливість додавання індивідуальних мета-заголовків (title) та описів
(description) для кожної сторінки, товару чи статті;
2. автоматична генерація людинозрозумілих url-адрес;
3. формування сайтмапи (sitemap.xml) та файлу robots.txt;
4. підтримка alt-текстів для зображень, що впливає на пошукову
індексацію;
5. структуровані дані (schema.org), які допомагають покращити вигляд
сайту в результатах пошуку;
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 14
6. рекомендації щодо поліпшення контенту з точки зору пошукової
оптимізації.
Ці можливості дозволяють підприємцям навіть без спеціальних знань у
сфері SEO покращити видимість свого сайту в інтернеті, залучати органічний
трафік і, як результат, — нових клієнтів.
Поєднання платіжних рішень і SEO-оптимізації у межах однієї системи
створює повноцінне середовище для електронної комерції: підприємець не
лише легко запускає сайт, а й одразу має все необхідне для його ефективного
функціонування, просування та отримання доходу. Це суттєво економить час,
знижує вартість запуску бізнесу та зменшує залежність від сторонніх сервісів
або фахівців.
Отже, метою кваліфікаційної роботи є проєктування та розробка
системи керування контентом для малих бізнесів, яка забезпечує зручне
управління веб-сайтом, можливість додавання товарів для онлайн-продажу,
інтеграцію з популярними платіжними системами та вбудовані інструменти
SEO-оптимізації для ефективного просування товарів і послуг у пошукових
системах.
Для досягнення сформульованої мети необхідно вирішити такі задачі:
проаналізувати існуючі системи керування контентом (CMS), їх переваги
та обмеження у контексті потреб малих бізнесів;
визначити вимоги до функціоналу CMS, орієнтованої на малий бізнес,
включаючи інструменти SEO, управління товарами та інтеграцію з
платіжними сервісами;
розробити архітектуру системи та структуру бази даних з урахуванням
вимог до масштабованості та зручності використання;
реалізувати модулі керування контентом, каталогом товарів і оформлення
замовлень;
забезпечити інтеграцію системи з популярними платіжними сервісами
(зокрема, LiqPay, Portmone, UAPAY);
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 15
реалізувати інструменти для базової SEO-оптимізації контенту (мета-теги,
генерація SEO-дружніх URL, карта сайту тощо);
провести тестування розробленої системи на відповідність
функціональним вимогам та зручність для кінцевого користувача;
оцінити ефективність використання системи для представлення товарів
малого бізнесу в інтернеті.
1.3 Висновки до розділу
Проведений аналіз існуючих систем управління контентом, таких як
WordPress, показав, що хоча вони й пропонують широкий функціонал і
гнучкість, їх основна орієнтація — це блогові платформи, які не завжди зручні
для малого бізнесу. Додавання великої кількості плагінів лише ускладнює
систему, вимагає технічних знань і часто створює проблеми з продуктивністю
та безпекою. Сучасному бізнесу потрібен швидкий старт з мінімальними
зусиллями та одразу готова до роботи інфраструктура продажів. CMS можуть
спростити цей процес, але лише за умови, що вони спеціально адаптовані для
бізнес-задач. Тому актуальним є розроблення простої у використанні системи,
яка дозволить швидко створювати сайти з можливістю продажу товарів,
прийому онлайн-платежів та базовою SEO-оптимізацією — усе в єдиному
рішенні, що мінімізує технічні бар’єри для підприємців-початківців.
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 16
2 ВИБІР ТЕХНОЛОГІЇ ТА ІНСТРУМЕНТАЛЬНИХ ЗАСОБІВ
РОЗРОБКИ СИСТЕМИ
2.1 Огляд існуючих технологій
Система керування контентом (CMS, англ. Content Management
System) — це програмне забезпечення, яке дає змогу створювати, редагувати,
публікувати та організовувати цифровий контент без необхідності мати
глибокі знання в галузі програмування. На рисунку 2.1 зображено для чого
саме використовують таку систему.
Рисунок 2.1 – Система керування контентом (CMS)
Основною метою CMS є спрощення управління вебсайтом: власник або
адміністратор ресурсу отримує зручний інтерфейс, через який можна додавати
тексти, зображення, товари, формувати сторінки тощо.
Класична CMS складається з двох основних частин. Перша — це
фронтенд, тобто інтерфейс, який бачить відвідувач сайту. Друга — бекенд,
або адміністративна панель, через яку керується весь вміст і налаштування.
Завдяки цьому розподілу користувачі, які не мають технічного досвіду,
можуть легко оновлювати контент сайту, не звертаючись до програмістів [3].
Для створення CMS використовуються різноманітні мови
програмування. Найпопулярнішою є PHP, яку застосовують у таких широко
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 17
відомих CMS, як WordPress, Joomla та Drupal. PHP добре підходить для роботи
з серверною частиною, а завдяки фреймворкам (наприклад, Laravel або
Symfony) розробка стає ще ефективнішою. Окрім PHP, активно
використовують JavaScript (особливо Node.js), що дозволяє створювати CMS
із сучасною, динамічною логікою. Також застосовуються Python (наприклад,
у Django CMS) та Ruby (наприклад, RefineryCMS) [4].
Для зберігання всього контенту, налаштувань та інформації про
користувачів використовуються бази даних. Найпоширенішими є MySQL або
її форк MariaDB — вони добре інтегруються з PHP. Також популярними є
PostgreSQL, яка пропонує більшу гнучкість та стабільність, та MongoDB, яка
використовується в NoSQL-рішеннях, зокрема для CMS з headless-
архітектурою. Для невеликих або локальних проєктів іноді використовують
SQLite.
Інтерфейс CMS реалізується за допомогою фронтенд-технологій:
HTML, CSS, JavaScript. Щоб створити сучасний, адаптивний та інтерактивний
інтерфейс, часто застосовують фреймворки, такі як React, Vue.js або
Angular [5]. Для швидшої розробки дизайну використовуються CSS-
фреймворки, як-от Bootstrap або Tailwind CSS. На рисунку 2.2 зображено
найпопулярніші CMS.
Рисунок 2.2 – Найпопулярніші CMS
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 18
CMS зазвичай розгортається на веб-сервері, для чого використовують
Apache або Nginx. Щоб полегшити процес розгортання й забезпечити
стабільну роботу, часто використовуються контейнери Docker, які дозволяють
запускати CMS в ізольованому середовищі.
Також у процесі розробки та підтримки CMS важливими є системи
контролю версій, зокрема Git, та інструменти автоматизації розгортання
(наприклад, GitHub Actions, GitLab CI). Якщо CMS повинна обмінюватися
даними з іншими сервісами, важливо реалізувати API – REST або GraphQL
[6].
Створення сучасної CMS вимагає знань і використання цілого спектру
технологій — від мов програмування та баз даних до вебсерверів і
інтерфейсних бібліотек. Вибір конкретних рішень залежить від вимог до
продуктивності, масштабованості, безпеки та функціональності майбутньої
системи.
Node.js – це середовище виконання JavaScript на сервері, яке дало змогу
використовувати цю мову не лише у браузері, але й на серверному боці.
Node.js побудоване на рушії V8 від Google Chrome і має неблокуючу,
асинхронну архітектуру, що робить його особливо корисним для застосунків,
які обробляють велику кількість одночасних запитів, наприклад чати, системи
реального часу або API [7]. Принцип роботи Node.js зображено на рисунку
2.3.
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 19
Рисунок 2.3 – Принцип роботи Node.js
Основною перевагою є можливість писати як фронтенд, так і бекенд на
одній мові – JavaScript. Також варто відзначити велику екосистему готових
модулів через NPM.
PHP – одна з найпоширеніших мов програмування для вебу, спеціально
створена для роботи з динамічними сторінками. Вона має низький поріг входу
та використовується в популярних CMS, таких як WordPress, Joomla, Drupal.
Принцип роботи PHP зображено на рисунку 2.4.
Рисунок 2.4 – Принцип роботи PHP
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 20
Сучасні PHP-фреймворки, як-от Laravel чи Symfony, дозволяють
створювати безпечні, масштабовані та ефективні веб-додатки. PHP добре
працює з MySQL і поширеними веб-серверами, такими як Apache або
Nginx [8]. Незважаючи на поширення, PHP критикують за застарілі практики
та слабку архітектуру старих проєктів.
Java – це потужна об’єктно-орієнтована мова програмування, що
застосовується переважно у великих, складних корпоративних системах.
Завдяки JVM (Java Virtual Machine) Java-код можна запускати на будь-якій
платформі, що має цю віртуальну машину. Принцип роботи Java зображено
на рисунку 2.5.
Рисунок 2.5 – Принцип роботи PHP
У веброзробці Java активно використовується разом із фреймворками,
такими як Spring, Hibernate або Struts. Вона ідеально підходить для реалізації
складних, безпечних та стабільних CMS або систем документообігу. Однак
через свою складність Java має крутішу криву навчання і вимагає більше
ресурсів сервера.
C# – це об’єктно-орієнтована мова програмування, створена компанією
Microsoft, яка використовується у середовищі .NET. Вона особливо популярна
у бізнес-розробці, корпоративних системах, CRM, ERP, а також у створенні
CMS на основі ASP.NET (наприклад, Umbraco, Orchard) [9]. Завдяки сильній
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 21
типізації, інтеграції з Visual Studio, та підтримці сучасних стандартів, C# є
надійною мовою для складних веб-рішень. Завдяки .NET Core розробка стала
кросплатформенною, що дозволяє розгортати системи не лише на Windows, а
й на Linux. Проте складність мови і тісна інтеграція з Microsoft-екосистемою
можуть бути перешкодою для початківців.
MySQL – це одна з найпоширеніших реляційних систем управління
базами даних (RDBMS), яка використовує SQL (Structured Query Language)
для доступу та керування даними. Вона побудована за класичною табличною
структурою: дані зберігаються в таблицях, які мають стовпці з фіксованими
типами даних. MySQL добре підходить для невеликих і середніх проєктів,
блогів, CMS (таких як WordPress), магазинів і навіть складних вебзастосунків.
Робоче середовище зображено на рисунку 2.6.
Рисунок 2.6 – Робоче середовище MySQL
Вона має високу швидкість виконання запитів, простий синтаксис і
широку підтримку в інструментах веброзробки. Також варто відзначити, що
MySQL має безкоштовну (Community) версію і комерційну підтримку від
Oracle [10].
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 22
PostgreSQL – це потужна об’єктно-реляційна система керування базами
даних, яка вважається однією з найпросунутіших у своїй категорії. Вона також
використовує SQL, але відзначається більшою гнучкістю та відповідністю
стандартам. PostgreSQL підтримує складні типи даних, включно з JSON, XML,
географічними координатами (через PostGIS), дозволяє створювати власні
функції, тригери, індекси. Це робить її популярною серед розробників, які
створюють складні додатки, аналітичні платформи або сервіси з
нестандартною логікою даних. Робоче середовище зображено на рисунку 2.7.
Рисунок 2.7 – Робоче середовище PostgreSQL
Крім того, PostgreSQL славиться надійністю, стабільністю та точністю
обробки транзакцій.
MongoDB – це нереляційна база даних (NoSQL), що зберігає дані у
форматі документів (JSON-подібна структура – BSON). Вона не використовує
таблиць і стовпців, а зберігає інформацію у вигляді гнучких структурованих
документів, які легко масштабуються та можуть мати різну структуру [11].
MongoDB чудово підходить для застосунків, де структура даних часто
змінюється або де важлива висока швидкість читання/запису — наприклад, у
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 23
мобільних додатках, аналітичних системах, системах реального часу. Завдяки
горизонтальному масштабуванню та високій продуктивності, MongoDB часто
обирають стартапи, які хочуть швидко запускати MVP, або команди, що
працюють з великими обсягами неструктурованих даних.
Shared-хостинг (віртуальний хостинг) – це найдоступніший і
найпростіший варіант хостингу, який підходить для невеликих сайтів, блогів,
візиток і простих онлайн-магазинів. У цьому випадку один фізичний сервер
використовується одночасно багатьма користувачами. Кожному клієнту
надається обмежений обсяг ресурсів – пам’ять, процесорний час, дисковий
простір. Переваги shared-хостингу – низька вартість, легкість у налаштуванні
(часто є панель керування на кшталт cPanel або ISPmanager), та мінімальні
технічні вимоги до користувача [12]. Недоліки – обмежена продуктивність,
залежність від “сусідів по серверу”, а також обмеження на встановлення
кастомного ПЗ чи серверних модулів.
VPS (Virtual Private Server) – це віртуальний сервер, який фізично
розміщується на одному сервері, але користувач отримує ізольоване
середовище з виділеними ресурсами: оперативною пам’яттю, процесором,
диском. Це гнучкіший і потужніший варіант у порівнянні з shared-хостингом.
Ви маєте повний доступ до операційної системи (root-доступ), можливість
встановлювати будь-яке програмне забезпечення, налаштовувати сервер під
конкретні потреби (наприклад, спеціальні версії PHP, Node.js, бази даних
тощо). VPS підійде для серйозних бізнесів, що планують масштабування,
інтенсивний трафік чи складну логіку сайту. Водночас, VPS вимагає базових
або просунутих знань у адмініструванні серверів.
Виділений сервер (Dedicated Server) – це повноцінний фізичний
сервер, орендований повністю одним користувачем або компанією. Усі
апаратні ресурси використовуються тільки для вашого проєкту, що гарантує
високу продуктивність, стабільність і безпеку. Виділені сервери застосовують
для великих онлайн-магазинів, систем електронної комерції, сервісів з
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 24
високим навантаженням, великих корпоративних порталів або систем обліку.
Головна перевага – повний контроль над усіма параметрами сервера,
включаючи залізо. Недолік – висока ціна та потреба в професійному
адмініструванні (або наймі спеціаліста).
2.2 Обґрунтування вибору
Для розробки системи керування контентом необхідно обрати такі
технології, які забезпечать максимально простий запуск системи на будь-
якому серверному середовищі. Це означає, що використовувані інструменти
повинні бути кросплатформеними, мати широку підтримку в різних
операційних системах і не вимагати складної попередньої конфігурації.
Оптимальним рішенням буде застосування мов програмування та
фреймворків, які легко запускаються на більшості серверів. Наприклад, PHP,
Python або JavaScript (Node.js) мають велику спільноту, добре задокументовані
та підтримуються багатьма хостингами.
Більшість доступних за ціною хостингів підтримують мову
програмування PHP, оскільки вона є однією з найпоширеніших у веб-розробці.
Це обумовлено як історичними причинами, так і її простотою у використанні
та широкою підтримкою з боку серверного програмного забезпечення,
зокрема Apache та Nginx [13].
Саме тому використання PHP для розробки системи керування
контентом є доцільним рішенням. Такий вибір дозволить забезпечити
сумісність із більшістю бюджетних хостинг-провайдерів, що, у свою чергу,
зробить систему доступною для ширшого кола користувачів. Крім того, PHP
не потребує складного налаштування для запуску – достатньо мінімальної
конфігурації сервера, що значно спрощує процес розгортання системи.
З технічної точки зору вибір мови PHP для розробки системи керування
контентом (CMS) є обґрунтованим з кількох ключових причин. PHP є однією
з небагатьох мов, яка безпосередньо підтримується більшістю веб-серверів
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 25
(Apache, Nginx) через модулі (наприклад, mod_php), що дозволяє запускати
PHP-код без додаткових шарів інтерпретації або окремих серверних процесів.
Це спрощує інсталяцію та конфігурацію середовища.
На відміну від Node.js або Python, які часто потребують налаштування
окремого серверного процесу (наприклад, через pm2, Gunicorn тощо), PHP-
скрипти виконуються безпосередньо через веб-сервер. Це особливо важливо
для дешевих хостингів, де немає можливості запускати фонові служби.
PHP має нативну підтримку для роботи з MySQL, PostgreSQL, SQLite та
іншими популярними СУБД, що дозволяє ефективно реалізувати
функціональність для зберігання контенту без потреби в додаткових
бібліотеках або драйверах [14].
Вибір системи керування базами даних (СУБД) для системи керування
контентом також повинен базуватися на принципі доступності та сумісності з
більшістю хостинг-платформ. У цьому контексті MySQL є найдоцільнішим
варіантом, оскільки вона підтримується практично всіма хостинг-
провайдерами, включно з найдешевшими тарифними планами.
MySQL є однією з найпопулярніших СУБД у світі, що забезпечує високу
швидкодію, надійність та широкі можливості для масштабування. Її
використання дозволяє легко розгортати систему на будь-якому стандартному
LAMP- або LEMP-стеку (Linux, Apache/Nginx, MySQL, PHP), які є типовими
для бюджетних серверів [15].
Крім того, для роботи з MySQL існує велика кількість інструментів
адміністрування, таких як phpMyAdmin, які часто вже попередньо встановлені
на хостингу, що додатково спрощує обслуговування бази даних навіть для
користувачів без глибоких технічних знань.
Таким чином, вибір MySQL як основної СУБД є логічним і технічно
обґрунтованим рішенням, яке відповідає меті створення системи з
максимальною сумісністю та простотою розгортання.
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 26
Для розробки системи керування контентом доцільно використовувати
реляційну базу даних, оскільки структура таких систем зазвичай передбачає
чітко організовані та взаємопов’язані дані. Наприклад, у типовій CMS існують
сутності на кшталт користувачів, статей, категорій, коментарів тощо, які
мають між собою логічні зв’язки (один-до-багатьох, багато-до-багатьох тощо).
Саме реляційна модель найкраще підходить для опису та реалізації таких
зв’язків.
Реляційна модель підходить для розробки системи керування
контентом, оскільки вона дозволяє зручно організувати дані у вигляді таблиць
із чітко визначеними зв’язками між ними. У такій системі зазвичай є сутності,
які тісно пов’язані між собою, наприклад, користувачі, статті, категорії,
коментарі тощо. Реляційна база дозволяє легко моделювати ці зв’язки,
забезпечуючи цілісність і логічну послідовність даних. Крім того, SQL – мова
запитів до реляційних баз – дає змогу ефективно виконувати складні вибірки,
сортування, фільтрацію і об’єднання таблиць, що є важливим для динамічного
управління контентом.
MySQL у цьому контексті є ідеальним варіантом, оскільки це одна з
найпоширеніших реляційних СУБД, яка підтримується практично всіма
хостингами. Вона добре працює з мовою PHP, має високу продуктивність,
простий механізм резервного копіювання та зручні інструменти
адміністрування, такі як phpMyAdmin [16]. MySQL є безкоштовною, має
велику спільноту користувачів та багаторічну історію розвитку, що робить її
надійним і перевіреним рішенням для створення веб-систем будь-якого рівня
складності.
У цій системі дуже важливо мати вбудовані механізми для покращення
SEO, оскільки від цього залежить, наскільки ефективно товари та публікації
будуть індексуватися пошуковими системами. Щоб забезпечити хорошу
видимість у пошуку, необхідно реалізувати можливість редагування мета-
тегів для кожної сторінки, зокрема заголовка, опису та ключових слів. Також
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 27
важливо, щоб система підтримувала створення зрозумілих для користувача
URL-адрес, які легко читаються і запам’ятовуються.
Крім цього, система повинна автоматично генерувати файл sitemap.xml,
який допомагає пошуковим роботам швидше знаходити нові сторінки.
Редактор файлу robots.txt також є важливою функцією, оскільки дозволяє
гнучко керувати доступом пошукових систем до різних частин сайту. Для
покращення відображення сторінок у соціальних мережах та для надання
пошуковим системам більш чіткої інформації про вміст доцільно впровадити
підтримку тегів Open Graph і структурованих даних Schema.org.
Система має дозволяти підключення аналітики, наприклад, Google
Analytics, щоб відстежувати поведінку користувачів, кількість переглядів
сторінок, джерела трафіку та інші показники. Також буде корисним мати
базову перевірку унікальності контенту або інтеграцію з сервісами, що
виявляють дублікати текстів, оскільки дублювання негативно впливає на
рейтинг у пошукових системах. Усі ці інструменти повинні бути частиною
адміністративної панелі, що зробить управління SEO простим та ефективним
для користувача будь-якого рівня підготовки.
Використання таких систем аналітики, як Google Analytics, є повністю
безкоштовним, тому користувачеві не потрібно буде оплачувати доступ до
цих інструментів. Це дозволяє навіть невеликим проєктам отримувати
детальну статистику щодо відвідуваності сайту, джерел трафіку, поведінки
користувачів та інших важливих метрик без додаткових витрат. Безкоштовний
доступ до аналітики робить систему більш привабливою для широкого кола
користувачів, оскільки забезпечує доступ до потужних інструментів
моніторингу без потреби купувати стороннє програмне забезпечення чи
оформлювати платні підписки.
Для будь-якого сучасного бізнесу можливість продавати продукти
безпосередньо на вебсайті є надзвичайно важливою складовою успішної
діяльності. Інтернет-магазини та онлайн-платформи дозволяють значно
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 28
розширити аудиторію клієнтів, забезпечити швидкий і зручний доступ до
товарів та послуг, а також автоматизувати процес продажів. Саме тому
система керування контентом, яку розробляють, має володіти функціоналом,
який дозволяє ефективно опрацьовувати платежі за товари. Це означає, що
вона повинна підтримувати інтеграцію з різними платіжними шлюзами, які
дають змогу приймати оплату банківськими картками, через електронні
гаманці, мобільні платежі або інші популярні способи. Важливо, щоб система
була гнучкою і могла адаптуватися до різних методів оплати, враховуючи
особливості бізнесу та вимоги користувачів.
Крім того, сама робота з замовленнями є ключовим елементом для
організації процесу продажів. Система має забезпечувати повний цикл
управління замовленнями – від їх прийому і збереження інформації про
покупців до контролю статусу виконання, доставки та можливості внесення
змін або відміни замовлення. Важливо, щоб адміністративна панель дозволяла
відстежувати всі замовлення в режимі реального часу, надавала звіти про
продажі та підтримувала комунікацію з клієнтами, наприклад, через
автоматичні повідомлення про статус замовлення.
Такий комплексний підхід не лише підвищує ефективність бізнес-
процесів, а й значно покращує користувацький досвід. Клієнти отримують
зручний інтерфейс для вибору та оплати товарів, а власники бізнесу –
інструменти для контролю і аналізу продажів, що дозволяє оперативно
реагувати на зміни попиту та підвищувати рівень обслуговування. В
результаті система стає не просто платформою для публікації інформації, а
повноцінним інструментом для розвитку онлайн-продажів і збільшення
прибутку бізнесу.
Для обробки платежів у системі важливо передбачити інтеграцію з
відомими українськими платіжними системами, такими як LiqPay. Оскільки
цільовим ринком цієї платформи є саме українські компанії, використання
локальних платіжних процесорів має велике значення. Підключення
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 29
українських платіжних систем дозволяє врахувати специфіку регіонального
ринку, підтримувати популярні серед користувачів способи оплати та
дотримуватися місцевих законодавчих вимог.
LiqPay, зокрема, є однією з найпопулярніших та найбільш надійних
платіжних систем в Україні, яка пропонує широкий спектр способів оплати –
від банківських карток і інтернет-банкінгу до мобільних платежів. Інтеграція
з таким платіжним процесором забезпечує безпечну і зручну оплату для
клієнтів, що є критично важливим для підвищення рівня довіри до сайту та
збільшення конверсії.
Крім того, використання локальних платіжних сервісів дозволяє
оперативно обробляти платежі, знижує комісії та спрощує бухгалтерський
облік і звітність для бізнесу. Враховуючи, що система орієнтована саме на
український ринок, реалізація підтримки українських платіжних процесорів є
логічним і стратегічно вигідним рішенням, яке сприятиме кращій адаптації
платформи під потреби користувачів і підвищенню конкурентоспроможності
бізнесу.
2.3 Висновки до розділу
У цьому розділі було проаналізовано ключові технології, необхідні для
створення системи управління контентом (CMS), зокрема мови
програмування (Node.js, PHP, Java, C#), бази даних (MySQL, PostgreSQL,
MongoDB) та варіанти хостингу (shared, VPS, виділені сервери). Розгляд
показав, що кожна з технологій має свої переваги залежно від потреб
розробки, продуктивності та бюджету.
На основі аналізу зроблено висновок, що для малого бізнесу найкращим
вибором є використання сучасного технологічного стеку з акцентом на
простоту, швидкість впровадження та можливість масштабування. Це
дозволить створити гнучку та ефективну CMS, яка забезпечить швидкий старт
продажів і підтримку подальшого зростання проєкту.
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 30
3 РОЗРОБКА СИСТЕМИ КЕРУВАННЯ КОНТЕНТОМ ДЛЯМАЛИХ
БІЗНЕСІВ З ВБУДОВАНИМИ ІНССТРУМЕНТАМИ SEO-
ОПТИМІЗАЦІЇ
3.1 Структура системи
Розроблена система є програмним забезпеченням, створеним на базі
мови програмування PHP, що забезпечує широкий функціонал для управління
контентом і товарами на вебсайті. Вона надає користувачеві зручний
інтерфейс для додавання новин, що дозволяє оперативно інформувати
відвідувачів про важливі події, акції або зміни в діяльності компанії. Окрім
цього, система підтримує можливість додавання продуктів для продажу,
дозволяючи ефективно організувати онлайн-торгівлю, управляти каталогом
товарів, їх описами, цінами та зображеннями.
Важливою складовою системи є також можливість налаштовувати SEO
параметри для кожної публікації і товару. Це включає редагування мета-тегів,
формування зручних і зрозумілих URL-адрес, генерацію файлів для
пошукових систем та інші інструменти, які покращують видимість сайту у
пошуковій видачі. Завдяки цьому власники сайту можуть підвищувати
органічний трафік і залучати більше потенційних клієнтів без додаткових
витрат на рекламу.
Використання PHP як основної мови програмування забезпечує високу
сумісність системи з більшістю хостинг-платформ, що спрощує процес
розгортання і подальшого супроводу проекту. В цілому, ця система створена
для того, щоб максимально полегшити процес управління контентом і онлайн-
продажами, забезпечуючи при цьому потужні інструменти для просування
сайту в інтернеті.
Система складається з кількох ключових модулів, які забезпечують її
функціональність і зручність використання. Структура розробленої системи
зображена на рисунку 3.1.
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 31
Рисунок 3.1 – Структура розробленої системи
Перш за все, це панель адміністратора — інтерфейс, який дає змогу
керувати всіма аспектами роботи сайту, включно з додаванням і редагуванням
новин, продуктів, налаштуваннями SEO, обробкою замовлень і платежів.
Панель адміністратора розроблена таким чином, щоб навіть користувачі без
глибоких технічних знань могли швидко опанувати управління системою.
Другим важливим елементом є портал клієнта — частина системи,
призначена для кінцевих користувачів, де вони можуть переглядати товари,
робити замовлення, ознайомлюватися з новинами і користуватися іншими
функціями сайту. Цей модуль відповідає за зручність і привабливість
інтерфейсу, що сприяє підвищенню лояльності та залученості клієнтів.
Окремо виділений SEO модуль, який надає можливість оптимізувати
контент і структуру сайту для кращої індексації пошуковими системами. Він
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 32
включає інструменти для налаштування мета-тегів, формування дружніх URL,
генерації карти сайту та інших параметрів, що допомагають підвищити
видимість ресурсу в інтернеті.
Система також містить модуль платіжних систем, який відповідає за
інтеграцію з різними платіжними сервісами, включаючи популярні українські
платіжні процесори. Цей модуль забезпечує безпечне та зручне опрацювання
платежів, підтримує різні методи оплати і дозволяє ефективно керувати
замовленнями, що є критично важливим для розвитку бізнесу. Усі ці модулі
разом створюють потужну і гнучку систему, яка задовольняє потреби як
адміністраторів сайту, так і кінцевих користувачів.
Усі модулі системи є абстрактними, тобто логічно розділеними за
функціональністю, але не виділені як окремі автономні сервіси. Вони
працюють у межах одного серверного додатку, що побудований як монолітна
структура. Це означає, що вся логіка системи — від обробки запитів
адміністратора і клієнта до SEO-оптимізації, кешування та обробки платежів
— функціонує всередині єдиного програмного середовища, написаного на
PHP.
Такий підхід дозволяє значно спростити розгортання проєкту, оскільки
не вимагає складної конфігурації взаємодії між мікросервісами, додаткових
мережевих налаштувань чи інфраструктурної підтримки. Це робить систему
доступною для запуску навіть на недорогих хостингах, що підтримують
стандартне серверне середовище з PHP та MySQL. Об'єднання всіх модулів в
єдину програму також дозволяє забезпечити цілісність даних, спростити
процес налагодження, пришвидшити обробку запитів і зменшити затрати на
підтримку.
Незважаючи на те, що архітектура є монолітною, структура коду
побудована таким чином, що кожен модуль можна легко ідентифікувати та за
потреби масштабувати або рефакторити. Це створює гнучку основу для
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 33
подальшого розвитку системи, зберігаючи при цьому простоту і надійність її
функціонування.
Панель адміністратора та клієнтська частина вебсайту формуються і
віддаються безпосередньо з серверного додатку, що означає відсутність
окремого frontend-додатку. Уся логіка виведення інтерфейсу користувача
реалізована на стороні сервера з використанням PHP, що дозволяє генерувати
HTML-сторінки динамічно без потреби у використанні окремих JavaScript-
фреймворків або SPA-архітектури.
Цей підхід значно спрощує архітектуру системи, зменшує кількість
залежностей і робить розгортання проєкту більш прямолінійним. Усе, що
потрібно для повноцінної роботи — це підтримка веб-сервера та PHP-
оточення, без необхідності налаштовувати додаткове середовище для
компіляції чи обслуговування frontend-компонентів. Завдяки цьому система
ідеально підходить для розміщення на доступних спільних хостингах, де
обмежено ресурси, але доступні стандартні засоби запуску PHP-додатків.
Цілісність додатку також позитивно впливає на безпеку, оскільки всі
компоненти контролюються в межах одного серверного середовища.
Відсутність окремого frontend-додатку дозволяє уникнути проблем з
синхронізацією даних між клієнтом і сервером, забезпечуючи стабільну
роботу всіх функцій як у панелі адміністратора, так і на стороні користувача.
Система має вбудовану інтеграцію з платіжною системою LiqPay, що
забезпечує можливість прийому онлайн-платежів безпосередньо через
інтерфейс сайту. Усі продукти, які додаються до системи, можуть бути
повністю інтегровані з механізмом оплати через LiqPay, що дозволяє
автоматизувати процес продажу й зробити його максимально зручним як для
продавця, так і для покупця.
Після того як користувач обирає продукт і оформлює замовлення,
система автоматично перенаправляє його на сторінку оплати, що надається
LiqPay. Успішна транзакція підтверджується у режимі реального часу, після
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 34
чого система фіксує зміну статусу замовлення та може виконати додаткові дії,
наприклад, надіслати підтвердження клієнту або оновити залишок товару.
Завдяки цій інтеграції забезпечується повний цикл обробки платежів без
необхідності ручного втручання, що підвищує швидкість і точність
обслуговування.
Використання LiqPay як платіжного шлюзу особливо актуальне для
українського ринку, оскільки ця система підтримує оплату картками Visa та
MasterCard, а також пропонує додаткові зручності для клієнтів українських
банків. Крім того, інтеграція реалізована з урахуванням вимог безпеки,
включно з підтримкою зашифрованих з’єднань і підтвердженням транзакцій
через захищені канали, що гарантує надійність процесу оплати. Усе це робить
систему готовою до використання в комерційних проектах без потреби
додаткової розробки механізмів оплати.
Система містить власну внутрішню систему кешування та виводу, яка
виконує ключову роль у забезпеченні швидкодії та ефективної обробки
запитів користувачів. Цей компонент відповідає за отримання даних із різних
функціональних модулів системи, зберігання часто використовуваної
інформації у кеші та формування фінального результату для виводу на стороні
клієнта. Завдяки цьому підхід до побудови сторінок є централізованим і
контрольованим, що дозволяє уникнути дублювання запитів до бази даних і
значно зменшує навантаження на сервер.
Коли користувач звертається до певного ресурсу на сайті, система
спочатку перевіряє наявність відповідних даних у кеші. Якщо такі дані
існують і є актуальними, вони одразу використовуються для формування
відповіді, минаючи повторне звернення до модуля продуктів, новин, або
інших джерел. У випадку відсутності кешу або його застарілості система
ініціює взаємодію з відповідними модулями, отримує необхідну інформацію,
оновлює кеш і лише після цього віддає результат клієнту. Такий механізм
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 35
дозволяє оптимізувати обробку навіть при великій кількості запитів
одночасно.
Ця реалізація побудована без використання сторонніх бібліотек або
сервісів, що забезпечує повний контроль над процесом кешування і дозволяє
адаптувати його до специфіки саме цієї кваліфікаційної роботи. Власна
система кешування також дозволяє легко задавати правила оновлення та
терміни зберігання для різних типів контенту, а отже, забезпечити баланс між
актуальністю даних і швидкістю їх подачі. Усе це робить користувацький
досвід комфортнішим, а роботу сайту - стабільнішою та швидшою.
3.2 Опис функцій системи
Основною функцією розробленої системи є допомога бізнесу у
швидкому створенні власного вебсайту, що дозволяє оперативно виводити
інформацію про компанію, її діяльність та продукти. Система надає
користувачам інтуїтивно зрозумілі інструменти для публікації новин і статей,
що допомагає підтримувати актуальність контенту та залучати аудиторію.
Окрім цього, вона забезпечує можливість організувати продаж товарів
безпосередньо на сайті, надаючи весь необхідний функціонал для створення
каталогу продукції, управління замовленнями і обробки платежів.
Завдяки цьому бізнес отримує ефективний і зручний інструмент для
комунікації зі своїми клієнтами, збільшення охоплення ринку та автоматизації
основних процесів продажу. Водночас, система розроблена таким чином, щоб
мінімізувати складнощі технічного характеру, що робить її доступною навіть
для користувачів без спеціальних навичок у програмуванні або вебдизайні.
Таким чином, головна мета цього програмного забезпечення - надати бізнесу
можливість швидко і без зайвих витрат створити якісний вебресурс, який буде
відповідати сучасним вимогам і сприятиме розвитку комерційної діяльності.
Розроблена система поставляється у вигляді готового бандлу, який
можна з легкістю завантажити на будь-який shared hosting. Для налаштування
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 36
роботи системи достатньо прописати основні конфігураційні параметри,
зокрема дані для підключення до бази даних, що робиться у спеціальному
файлі конфігурації. Усе це детально описано в докладній інструкції, яка
супроводжує систему.
Завдяки простоті установки та зрозумілому керівництву навіть
користувачі без глибоких технічних знань зможуть швидко і без зайвих
труднощів розгорнути проєкт на своєму хостингу. Такий підхід робить
систему максимально доступною і зручною у використанні, дозволяючи
бізнесу швидко розпочати роботу з власним вебресурсом без необхідності
залучати фахівців для складного налаштування або розгортання.
Система поділяється на дві основні частини — клієнтську та
адміністративну. Клієнтська частина доступна для неавторизованих
користувачів, що дозволяє будь-кому переглядати публікації, новини та
інформацію про товари без необхідності входу в систему. Це забезпечує
відкритий доступ до контенту і робить сайт зручним для широкої аудиторії.
Крім того, навіть без авторизації користувачі можуть здійснювати
оплату товарів, що значно спрощує процес покупки і робить його доступним
для більшої кількості потенційних клієнтів.
Клієнт матиме можливість знаходити сторінки вебсайту за допомогою
пошукових сервісів, таких як Google, Bing та інші. Завдяки вбудованим
механізмам SEO-оптимізації, які забезпечують коректне формування мета-
тегів, дружніх URL-адрес і структуру сайту, контент системи легко
індексується пошуковими роботами. Це значно підвищує видимість сайту в
результатах пошуку і дозволяє потенційним клієнтам швидко знаходити
потрібну інформацію про товари, новини чи послуги, навіть якщо вони вперше
чують про компанію. Таким чином, система сприяє ефективному залученню
аудиторії і розширенню охоплення ринку через органічний трафік із
пошукових систем. Клієнтська частина зображена на рисунку 3.2.
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 37
Рисунок 3.2 – Клієнтська частина порталу
Адміністративна частина, навпаки, призначена для зареєстрованих
користувачів із відповідними правами доступу і надає розширені можливості
з управління сайтом, додавання новин, товарів, налаштування SEO та
контролю за замовленнями і платежами. Така структура забезпечує чітке
розмежування функцій та зручність використання для різних категорій
користувачів.
У панелі адміністратора користувач має можливість налаштувати
зовнішній вигляд вебсайту відповідно до своїх побажань і корпоративного
стилю. Зокрема, можна вибрати головний колір порталу, що буде
використовуватися у дизайні сайту, завантажити та встановити головну
картинку або банер, який відображатиметься на головній сторінці, а також
вказати назву вебсайту, що буде відображатися у шапці та вкладках браузера.
Ці налаштування дозволяють зробити сайт більш унікальним і впізнаваним,
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 38
створюючи привабливий і професійний образ бренду без необхідності
залучати дизайнера чи програміста.
Керування всіма публікаціями здійснюється безпосередньо в панелі
адміністрування, що забезпечує зручний та централізований контроль над
контентом вебсайту. Окрім можливості створювати та редагувати звичайні
новини або статті, система також дозволяє публікувати матеріали, пов’язані з
продажем товарів. Це означає, що адміністратор може одночасно вести
інформаційні публікації та створювати пропозиції для продажу, інтегровані з
каталогом продукції і платіжними системами. Такий підхід дозволяє легко
керувати контентом і комерційними пропозиціями в межах одного інтерфейсу,
роблячи процес управління сайтом максимально ефективним і зручним.
Панель адміністрування системою зображено на рисунку 3.3.
Рисунок 3.3 – Панель адміністрування системою
У панелі адміністрування користувач має змогу створювати нові
публікації та зручно керувати вже існуючим контентом. Під час додавання
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 39
новин або товарів користувач також отримує доступ до вбудованих SEO-
інструментів, які дозволяють оптимізувати кожну публікацію для пошукових
систем. Зокрема, можна вказати заголовки сторінок, мета-описи, ключові
слова та налаштувати читабельні URL-адреси. Це дає змогу підвищити
видимість кожної публікації в пошуковій видачі, збільшуючи шанси на
залучення нових відвідувачів з органічного трафіку. Усі ці можливості
інтегровані безпосередньо в інтерфейс створення контенту, що дозволяє
оптимізувати сторінки без залучення додаткових ресурсів або спеціалістів.
Система автоматично формує файл sitemap, який містить повний список
доступних сторінок вебсайту, включно з публікаціями та товарами. Цей файл
є важливим інструментом для пошукових систем, оскільки допомагає їм
швидко індексувати структуру сайту та виявляти новий контент. Після
створення sitemap система самостійно відправляє його у пошукові сервіси,
такі як Google, що дозволяє прискорити появу нових сторінок у результатах
пошуку. Таким чином, кожна зміна на сайті оперативно фіксується, а контент
стає доступним для індексації без додаткових дій з боку користувача. Це
забезпечує кращу видимість ресурсу в інтернеті та покращує SEO-
ефективність автоматично.
Для того щоб мати можливість використовувати функцію онлайн-
платежів у публікаціях, адміністратору необхідно підключити платіжну
систему LiqPay до свого сайту. Це передбачає створення облікового запису на
офіційному порталі LiqPay, де після реєстрації буде надано ключі доступу, які
потрібно вказати в налаштуваннях адміністративної панелі системи. Після
цього публікації, що пов’язані з продажем товарів, отримають функцію
прийому платежів безпосередньо через інтегрований інтерфейс. Завдяки
цьому користувачі зможуть здійснювати покупки швидко та безпечно, а
адміністратор — автоматизувати прийом замовлень і оплат. Це підключення
є одноразовим і не вимагає складного програмування, що робить процес
доступним навіть для тих, хто не має глибоких технічних знань.
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 40
3.3 Технічні вимоги для роботи з системою
Для стабільної роботи розробленої системи необхідно забезпечити
відповідне серверне середовище, яке підтримує всі технології, використані у
роботі. Оскільки система створена на мові програмування PHP, сервер
повинен мати встановлену актуальну версію PHP не нижче 7.4, хоча
рекомендується використовувати версії 8.0 і вище, оскільки вони
забезпечують покращену продуктивність, підвищену безпеку та розширені
можливості роботи з пам’яттю й асинхронними процесами. Також необхідно,
щоб на сервері були активовані стандартні PHP-розширення, такі як mysqli,
curl, mbstring, json, openssl та fileinfo, оскільки вони забезпечують обробку
запитів до бази даних, роботу з мережевими запитами, кодування тексту,
обробку JSON-даних, шифрування та інші критично важливі функції.
У якості системи управління базами даних використовується MySQL,
тому сервер повинен мати інстальований MySQL-сервер, бажано версії 5.7 або
вище. Це дозволяє забезпечити повну підтримку всіх SQL-запитів, індексації,
зв’язків між таблицями та збереження великих обсягів інформації, включаючи
дані товарів, публікацій, користувачів і транзакцій. Доступ до бази даних
повинен бути налаштований у конфігураційному файлі, який поставляється
разом із системою, і містить параметри підключення, такі як ім’я хоста, назва
бази даних, логін і пароль.
Для розміщення сайту достатньо звичайного shared hosting, проте
бажано, щоб сервер підтримував доступ по FTP або SFTP для завантаження
бандлу системи, а також наявність вебінтерфейсу для керування базами даних,
наприклад phpMyAdmin. Сервер повинен мати можливість обробляти .htaccess
файли для коректної роботи з URL-адресами, оскільки система використовує
механізми модульного роутингу, що реалізовані на рівні вебсервера через
Apache або сумісні вебсервери. Якщо використовується Apache, важливо, щоб
був активований модуль mod_rewrite, який відповідає за обробку
перенаправлень і генерацію SEO-дружніх URL.
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 41
Для повноцінної роботи SEO-функціоналу бажано, щоб сервер дозволяв
генерувати і віддавати пошуковим системам файли robots.txt та sitemap.xml,
які система формує автоматично. Також потрібно, щоб сервер мав підтримку
SSL-сертифікатів, оскільки сучасні платіжні системи, зокрема LiqPay,
вимагають використання захищеного з’єднання HTTPS для обробки
транзакцій.
Крім того, сервер повинен мати мінімум 128 МБ пам’яті на один PHP-
процес, бажано більше, щоб забезпечити стабільну роботу при високому
навантаженні або великій кількості одночасних відвідувачів. Потрібен також
достатній дисковий простір для зберігання завантажених зображень, файлів
публікацій та кешу. Система має вбудований механізм кешування, тому
бажано, щоб сервер дозволяв створювати тимчасові файли та каталоги для
збереження кешованого контенту.
Загалом, для роботи системи не потрібні складні або дорогі сервери.
Навіть базовий хостинг-план, який відповідає зазначеним технічним вимогам,
дозволить розгорнути повнофункціональний сайт з підтримкою контенту,
SEO, електронної комерції та інтеграцією з платіжними системами.
У випадку, якщо адміністратор планує використовувати систему для
прийому онлайн-платежів, необхідною технічною вимогою є інтеграція з
платіжною системою LiqPay. Система передбачає гнучкий механізм
підключення цієї платіжної платформи, що дозволяє адміністратору
самостійно ввести необхідні ключі, надані після реєстрації в особистому
кабінеті LiqPay. Для цього достатньо створити обліковий запис на офіційному
порталі LiqPay, отримати публічний і приватний ключі, а потім вставити їх у
відповідні поля в адміністративній панелі системи.
Із технічної точки зору, це означає, що сервер повинен мати підтримку
зовнішніх HTTPS-запитів, оскільки взаємодія з LiqPay здійснюється через
захищений API, який працює по SSL. Крім того, PHP-середовище має
підтримувати бібліотеки для шифрування та підпису даних, зокрема OpenSSL,
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 42
щоб забезпечити безпечну передачу платіжної інформації. Це дає змогу
системі обробляти транзакції напряму, не використовуючи сторонні плагіни
чи посередників. Таким чином, можливість прийому платежів прямо залежить
від доступності LiqPay API, а також готовності сервера працювати із
зовнішніми платіжними сервісами відповідно до сучасних стандартів безпеки.
3.4 Оцінка ефективності
Оцінка ефективності розробленої системи управління контентом
показує, що вона має суттєві переваги у порівнянні з універсальними
рішеннями, такими як WordPress, особливо в контексті використання для
бізнес-завдань. WordPress безсумнівно є потужною платформою з великою
спільнотою, величезною кількістю тем і плагінів, проте саме ця
універсальність стає його слабким місцем у ситуаціях, коли потрібне чітке,
цілеспрямоване рішення для конкретних бізнес-потреб. Більшість готових
шаблонів у WordPress побудовані за загальними схемами, які не завжди
відповідають структурі бізнес-процесів, а велика кількість сторонніх плагінів
ускладнює підтримку, уповільнює роботу сайту і збільшує ризики з точки зору
безпеки.
На відміну від цього, розроблена система має чітку спеціалізацію —
вона створена з урахуванням потреб малого та середнього бізнесу, який хоче
мати онлайн-присутність з можливістю продажу товарів та публікації новин.
Її архітектура побудована з урахуванням реальних сценаріїв використання:
додавання товарів, публікацій, прийом платежів, керування замовленнями,
SEO-оптимізація — усе це інтегровано безпосередньо у саму систему без
необхідності встановлювати додаткові розширення чи звертатися до сторонніх
сервісів.
Система пропонує вже вбудовану підтримку платіжних сервісів, зокрема
української платформи LiqPay, що є великою перевагою для компаній, які
орієнтуються на локальний ринок. Підключення платежів реалізовано
максимально просто, що дозволяє навіть користувачам без глибоких
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 43
технічних знань інтегрувати онлайн-оплату. У WordPress же подібна
функціональність вимагає встановлення складних плагінів, часто платних, і
ручного налаштування, що не завжди є зручним або стабільним варіантом.
Ще однією перевагою є система кешування та виводу контенту, яка
вбудована безпосередньо в ядро програми. Це дозволяє швидко обробляти
запити та економити ресурси сервера навіть на дешевих хостингах, тоді як
WordPress часто потребує додаткових плагінів кешування, які можуть
конфліктувати між собою або вимагати постійного налаштування. У нашій
системі все вже оптимізовано для типових сценаріїв перегляду новин, товарів,
здійснення покупок і взаємодії з користувачем.
Окремо варто відзначити SEO-модуль, який дає змогу прямо в процесі
публікації оптимізовувати сторінку для пошукових систем. Вбудована
генерація sitemap і автоматична відправка у пошукові сервіси дозволяє
забезпечити швидку індексацію сайту, що критично важливо для бізнесу, який
хоче бути знайденим в інтернеті [17]. У WordPress SEO-підтримка
реалізується через додаткові плагіни, і щоб досягти подібного рівня
автоматизації, потрібне встановлення і налаштування кількох окремих рішень,
що знову ж ускладнює систему і створює залежність від сторонніх
розробників.
Ще один ключовий момент — простота запуску. Наша система
поставляється у вигляді готового бандлу, який можна легко розгорнути на
будь-якому shared hosting. Інсталяція не вимагає знань серверного
адміністрування, все зведено до копіювання файлів, налаштування бази даних
і вказання параметрів у конфігураційному файлі. WordPress, хоча і є досить
популярним, часто вимагає попередньої установки та додаткових дій з
налаштування теми, плагінів і базової структури сайту.
У результаті, з точки зору ефективності, ця система демонструє високу
продуктивність, простоту у впровадженні та чітку бізнес-орієнтацію. Вона не
лише дозволяє швидко створити вебсайт, але й забезпечує всі необхідні
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 44
інструменти для його ведення, розвитку, просування та монетизації — без
зайвих ускладнень, характерних для більшості універсальних платформ. Це
робить її оптимальним вибором для малого та середнього бізнесу, який хоче
отримати конкретний результат із мінімальними витратами часу та ресурсів.
3.5 Висновки до розділу
У цьому розділі було детально описано функціональні можливості,
архітектуру та технічну реалізацію розробленої вебсистеми для управління
контентом і онлайн-торгівлею. Система побудована на мові програмування
PHP і має монолітну структуру, що забезпечує простоту розгортання,
надійність у роботі та легкість підтримки. Вона містить ключові модулі,
зокрема адміністративну панель, клієнтський портал, SEO-інструменти,
платіжний модуль, а також власну систему кешування, що разом формують
потужне середовище для ведення бізнесу в інтернеті. Завдяки цьому, система
дозволяє компаніям оперативно додавати контент, керувати товарами,
обробляти замовлення й автоматизувати продажі.
Особливу увагу приділено зручності користування системою навіть для
осіб без спеціальних технічних знань. Інтеграція з платіжною системою
LiqPay, SEO-оптимізація, підтримка українських хостингів та проста
процедура встановлення роблять цей продукт придатним для широкого кола
користувачів. Усе це свідчить про те, що створене програмне забезпечення є
ефективним інструментом для малого та середнього бізнесу, який дозволяє
швидко запускати повноцінний вебресурс з широким функціоналом та
сучасними можливостями просування.
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 45
4 ЗАХИСТ СИСТЕМИ КЕРУВАННЯ КОНТЕНТОМ ДЛЯМАЛИХ
БІЗНЕСІВ З ВБУДОВАНИМИ ІНСТРУМЕНТАМИ SEO-
ОПТИМІЗАЦІЇ
4.1 Огляд існуючих рішень
Системи управління контентом (CMS) є дуже поширеним інструментом
для створення вебсайтів, але водночас вони становлять привабливу ціль для
хакерських атак. Це пов’язано з їх відкритим кодом (у випадку з open source),
широкою екосистемою плагінів, а також з тим, що ними часто користуються
непрофесійні користувачі. Захист інформації в CMS — це критичне завдання,
особливо коли йдеться про персональні дані, електронну комерцію або
платіжні операції.
Одним із головних способів захисту є регулярне оновлення самої CMS,
а також всіх додаткових модулів, тем і плагінів. Розробники постійно
виявляють та усувають вразливості, тому встановлення актуальних версій —
це перша лінія оборони проти більшості атак, таких як SQL-ін’єкції, XSS та
інші.
Контроль доступу — ще один важливий аспект. У більшості CMS можна
призначити різні ролі користувачів, як-от адміністратор, редактор, автор або
підписник. Важливо не надавати зайвих прав, обмежувати кількість облікових
записів з адміністраторськими повноваженнями та використовувати надійні
паролі й двофакторну автентифікацію (2FA) [18].
Окрему увагу слід приділити плагінам і темам. Часто саме сторонні
доповнення стають джерелом уразливостей. Рекомендується використовувати
лише перевірені модулі з офіційних джерел і регулярно очищати систему від
невикористовуваних елементів. Це зменшує поверхню потенційної атаки.
База даних є серцем будь-якої CMS, оскільки містить контент сайту,
налаштування, облікові записи користувачів та іншу важливу інформацію.
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 46
Слід подбати про належні права доступу, а також убезпечити конфігураційні
файли (наприклад, wp-config.php або .env) через серверні налаштування [18].
Використання шифрування за допомогою HTTPS є обов’язковим
стандартом. Це забезпечує безпечну передачу інформації між користувачем і
сервером, зокрема при логінах, платежах чи заповненні форм. Наявність SSL-
сертифіката сьогодні є не лише елементом безпеки, а й фактором ранжування
в пошукових системах.
Крім цього, кожна система повинна мати налаштовані резервні копії.
Бекапи мають створюватися регулярно, автоматично і зберігатися в
безпечному місці, бажано окремо від основного сервера. Це дозволить швидко
відновити сайт у випадку атаки, збою чи помилки.
Ще одним дієвим методом є моніторинг активності та ведення логів. Це
дозволяє виявляти підозрілу активність, вчасно реагувати на спроби злому та
аналізувати дії користувачів і адміністраторів у разі інциденту.
Таким чином, захист інформації в CMS — це комплекс заходів, що
включає технічні, організаційні та адміністративні дії. Їх реалізація дозволяє
знизити ризики та забезпечити стабільну й безпечну роботу системи для
бізнесу і користувачів.
Захист інформації при роботі з системою управління контентом є одним
із найважливіших аспектів забезпечення безпеки користувачів,
адміністраторів і самого ресурсу [19]. Одним із перших етапів взаємодії з CMS
є процес авторизації та автентифікації, тому саме ці механізми мають бути
реалізовані максимально надійно та з урахуванням сучасних вимог безпеки.
Автентифікація — це процес перевірки особи користувача, тобто
встановлення факту, що він дійсно є тим, за кого себе видає. Найбільш
поширений варіант — автентифікація за логіном і паролем [20]. Щоб
підвищити безпеку, паролі зберігаються не в відкритому вигляді, а в
хешованому форматі (наприклад, за допомогою алгоритмів bcrypt або Argon2).
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 47
Це означає, що навіть у разі витоку бази даних, відновити реальні паролі буде
складно або неможливо.
Для підвищення рівня безпеки також застосовується двофакторна
автентифікація (2FA) [20]. У цьому випадку після введення логіну й паролю
користувач має ввести ще один код — наприклад, із SMS, додатку Google
Authenticator або електронної пошти. Це суттєво ускладнює несанкціонований
доступ, навіть якщо зловмисник дізнається пароль.
Авторизація — це наступний етап після автентифікації, що визначає, які
дії дозволено виконувати користувачу у системі. Наприклад, адміністратор
має право редагувати контент і користувачів, а звичайний користувач — лише
переглядати сторінки або залишати коментарі. Чіткий поділ прав доступу є
основою безпеки, адже дозволяє зменшити ризик помилок або зловживань зі
сторони користувачів.
Важливо також контролювати сесії користувачів, тобто проміжок часу,
протягом якого користувач залишається авторизованим. Сесії мають мати
обмежений термін дії, автоматичне завершення після періоду неактивності, а
також захист від атак типу “викрадення сесії” (session hijacking), наприклад,
через прив’язку до IP-адреси або пристрою [21].
Для захисту інформації в процесі авторизації та автентифікації слід
обов’язково використовувати захищений протокол передачі даних HTTPS, що
гарантує шифрування облікових даних під час їх передачі до сервера. Це
дозволяє уникнути перехоплення логіну й паролю зловмисником у мережі.
Крім цього, система повинна мати механізми обмеження кількості спроб
входу — наприклад, тимчасове блокування акаунта або IP-адреси після
декількох невдалих спроб. Це допомагає протистояти атакам типу brute force,
коли пароль підбирається автоматизовано.
Таким чином, надійна система автентифікації та авторизації, реалізована
з використанням сучасних підходів до захисту даних, є фундаментом безпеки
будь-якої CMS. Вона забезпечує контроль доступу до ресурсу, захищає
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 48
особисту інформацію користувачів та запобігає зловмисним діям, що можуть
нашкодити як самому бізнесу, так і його клієнтам.
Захист інформації при збереженні в базі даних є критично важливим
аспектом побудови безпечної системи керування контентом (CMS), особливо
коли мова йде про збереження конфіденційних даних користувачів, платіжної
інформації або внутрішніх бізнес-процесів. Неправильно налаштована або
слабо захищена база даних стає легкою мішенню для зловмисників.
Першим кроком є обмеження доступу до бази даних. Сервер бази даних
не повинен бути відкритим для зовнішніх підключень, якщо це не потрібно.
З’єднання до бази мають дозволятися лише з певних IP-адрес або з локального
сервера додатку. Також важливо створювати окремі облікові записи з
мінімально необхідними правами: наприклад, вебдодаток не повинен мати
доступу до адміністративних команд (як-от DROP DATABASE), якщо це не
потрібно [22].
Особливу увагу слід приділити хешуванню паролів. Зберігати паролі в
базі у відкритому вигляді — груба помилка. Паролі мають проходити
хешування з використанням сучасних алгоритмів (bcrypt, Argon2 тощо), а
також соління — додавання випадкових даних до пароля перед хешуванням.
Це значно ускладнює можливість зловмисника відновити пароль навіть у разі
витоку хешів.
Також важливо реалізувати захист від SQL-ін’єкцій — одного з
найпоширеніших типів атак на бази даних. Для цього потрібно завжди
використовувати параметризовані запити або ORM (Object-Relational
Mapping) бібліотеки, які автоматично екранують шкідливі символи. Ніколи не
слід включати необроблені дані користувача безпосередньо в SQL-запит [23].
Для захисту чутливої інформації, такої як адреси, номери телефонів або
платіжні дані, доцільно використовувати шифрування даних у базі.
Наприклад, AES-шифрування дозволяє зберігати важливу інформацію в
зашифрованому вигляді, а ключі до шифрування повинні зберігатися окремо
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 49
від бази, у захищеному середовищі (наприклад, у середовищі змінних
середовища сервера або у спеціальних сховищах ключів).
Також необхідно впровадити регулярне створення резервних копій бази
даних. Ці копії мають бути захищені, шифровані та збережені у безпечному
середовищі з обмеженим доступом. Крім того, слід протестувати можливість
відновлення даних, щоб упевнитися, що в разі збою чи атаки можна буде
швидко повернутися до стабільного стану.
Останнім елементом є логування доступу до бази даних. Це дозволяє
відслідковувати, хто і коли звертався до даних, і виявляти потенційні загрози
або підозрілу активність. У великих системах доцільно впровадити систему
моніторингу й оповіщення, яка фіксуватиме аномальні дії — наприклад,
масові запити або спроби отримати несанкціонований доступ.
Загалом, ефективний захист бази даних — це поєднання правильної
архітектури, дотримання принципу найменших привілеїв, використання
сучасних інструментів шифрування та уважного адміністрування. Це дозволяє
забезпечити надійне зберігання критично важливої інформації та знизити
ризики для бізнесу та його клієнтів.
Захист інформації при передачі даних в мережі Інтернет є ключовим
аспектом безпеки будь-якої системи управління контентом (CMS), особливо
якщо система передає конфіденційні дані, наприклад логіни, паролі,
персональні відомості користувачів або платіжну інформацію. Без
відповідного захисту дані, що передаються мережею, можуть бути
перехоплені зловмисниками.
Основним інструментом для захисту переданих даних є використання
протоколу HTTPS (HyperText Transfer Protocol Secure). На відміну від
звичайного HTTP, який передає інформацію у відкритому вигляді, HTTPS
забезпечує шифрування трафіку між клієнтом і сервером за допомогою
SSL/TLS (Secure Sockets Layer / Transport Layer Security) [24]. Це
унеможливлює перехоплення та підміну даних, навіть якщо користувач
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 50
підключається через публічну або незахищену мережу.
Щоб реалізувати HTTPS, вебсервер має бути налаштований з коректним
SSL-сертифікатом, який підтверджує справжність сайту. Для більшості сайтів
можна використовувати безкоштовні сертифікати, наприклад від Let’s Encrypt.
Сертифікат має бути регулярно оновлюваний, а також коректно
налаштований, щоб уникнути вразливостей, наприклад підтримки застарілих
версій TLS (версії 1.0 або 1.1 не рекомендуються).
Крім HTTPS, важливо використовувати шифрування переданих даних
на прикладному рівні, коли йдеться про особливо чутливу інформацію
(наприклад, токени доступу, номери банківських карт, ключі API). Це означає,
що навіть усередині зашифрованого HTTPS-з’єднання дані можуть
передаватися у вигляді зашифрованих значень, що додає ще один рівень
захисту.
Особливу увагу слід приділяти захисту від атак типу “людина
посередині” (Man-in-the-Middle, MITM). Такі атаки можливі, коли зловмисник
має можливість перехопити трафік між клієнтом і сервером, наприклад у
відкритій Wi-Fi мережі. Правильно реалізований HTTPS практично
унеможливлює MITM, але для повного захисту варто також впроваджувати
HTTP Strict Transport Security (HSTS) — це механізм, який змушує браузери
завжди використовувати HTTPS навіть при першому з’єднанні з сайтом.
Важливо також застосовувати CSRF- і XSS-захист, оскільки передача
даних через Інтернет передбачає обмін формами, запитами та куками. CSRF-
токени дозволяють переконатися, що запит відправлено саме з дозволеної
сесії, а не зловмисником. XSS-захист включає фільтрацію або екранування
введених користувачами даних, які зберігаються та потім можуть
передаватися іншим [25].
Крім того, варто використовувати механізми автентифікації запитів на
рівні API — наприклад, авторизацію за токенами (JWT) або OAuth2, які
передаються по захищеному каналу та мають обмежений термін дії.
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 51
Отже, захист інформації при передачі через Інтернет базується на
кількох ключових принципах: шифруванні трафіку за допомогою HTTPS,
використанні безпечних протоколів, контролі автентичності запитів та
обмеженні доступу до чутливих даних. Ці заходи дозволяють мінімізувати
ризики перехоплення, модифікації або несанкціонованого використання
інформації, що передається між користувачем і сервером.
4.2 Реалізація захисту користувачів
Розроблена система містить вбудовані механізми захисту, які
спрямовані на забезпечення безпеки як самого сервера, так і даних
користувачів, що взаємодіють із сайтом. Основною метою цих рішень є
попередження несанкціонованого доступу, захист персональної інформації,
фінансових операцій та стабільної роботи системи загалом.
У першу чергу реалізовано захист адміністративної панелі шляхом
авторизації із використанням надійної системи сесій. Всі запити, що
потребують прав доступу адміністратора, перевіряються на відповідність сесії
користувача, яка генерується після успішного входу. Цей механізм запобігає
доступу сторонніх осіб до внутрішніх функцій системи. Крім того, обробка
введених даних в усіх формах проходить через фільтри очищення, що
дозволяє захистити систему від найпоширеніших типів атак, таких як SQL-
інʼєкції та XSS (міжсайтове скриптування).
Під час обробки платежів з LiqPay дані передаються лише через
захищене з'єднання HTTPS, і для взаємодії із сервісом використовується
підпис транзакцій приватним ключем. Це унеможливлює підробку запитів та
гарантує справжність кожного платіжного повідомлення. Крім того, система
має механізм валідації відповідей від платіжного шлюзу, що дозволяє
уникнути обробки фальшивих транзакцій.
Клієнтська частина також захищена від автоматизованих запитів —
запроваджено прості захисні механізми на основі таймінгу сесій та обмеження
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 52
кількості повторних запитів у короткий проміжок часу. Це дозволяє знизити
ризик атак типу brute force та спам-ботів у формах оплати чи коментарях, якщо
такі будуть додані у майбутньому.
Всі критичні операції, що відбуваються в межах системи, зокрема
створення нових публікацій, зміна налаштувань сайту чи підключення
платіжних модулів, мають спеціальні перевірки на права доступу користувача.
Це дозволяє гарантувати, що лише авторизовані особи мають змогу вносити
зміни до конфігурації сайту або маніпулювати контентом.
На рівні файлової структури реалізовано обмеження доступу до
службових директорій, що зберігають конфігураційні файли, кеш та системну
інформацію. Всі ці каталоги або закриті через .htaccess, або винесені за межі
публічного доступу, якщо це дозволяє хостинг.
Тому, система не просто працює стабільно, а й робить це з урахуванням
сучасних вимог до кібербезпеки. Вона вже на базовому рівні надає повний
набір засобів захисту, яких достатньо для більшості бізнес-застосувань, і
дозволяє розширити їх у майбутньому без радикальних змін в архітектурі.
Оскільки розроблена система встановлюється безпосередньо на сервер
або хостинг, відповідальність за загальну безпеку вебсайту частково лягає і на
користувача, а саме на того, хто адмініструє серверне середовище або обирає
хостинг-провайдера. Система має вбудовані захисні механізми, які
забезпечують безпеку на рівні додатку, однак захист нижчого рівня — тобто
серверної інфраструктури, налаштувань вебсервера, доступів до файлової
системи, резервного копіювання та оновлень — виходить за межі
відповідальності самої системи і залежить від конфігурації оточення, де вона
розміщена.
Це означає, що користувач повинен обирати надійного хостинг-
провайдера, який пропонує сучасне середовище з підтримкою актуальних
версій PHP, захищений доступ до панелі керування (наприклад, через HTTPS),
регулярне резервне копіювання, антивірусний контроль і базовий захист від
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 53
DDoS-атак. Ненадійний хостинг або неправильно налаштоване серверне
середовище можуть стати слабкою ланкою в ланцюгу безпеки, незалежно від
того, наскільки добре захищено саму систему.
Крім того, адміністратор має самостійно слідкувати за оновленням
компонентів, таких як PHP, MySQL та інших модулів, що забезпечують роботу
системи. Вчасне оновлення серверного ПЗ дозволяє уникати використання
вразливих версій, які можуть бути відомими для зловмисників. Також важливо
забезпечити надійний пароль до облікових записів хостингу, обмежити доступ
до FTP/SFTP лише авторизованим особам та при можливості використовувати
двофакторну аутентифікацію.
Усе це є критично важливим, оскільки навіть якщо сама система на рівні
коду є безпечною, потенційні загрози можуть зʼявитися саме через недбале
або застаріле серверне середовище. Таким чином, повна безпека вебресурсу
досягається лише у випадку, коли захищено як сам додаток, так і хостинг, на
якому він функціонує. Це спільна відповідальність, і користувач повинен
розуміти роль хостингу в загальному ланцюгу безпеки.
Клієнтська частина розробленої системи є відкритою та не вимагає
авторизації, оскільки вона створена як публічний портал, доступний для всіх
відвідувачів. Це означає, що будь-який користувач може переглядати новини,
ознайомлюватися з товарами та здійснювати оплату без необхідності
створювати обліковий запис або вводити особисті дані. Такий підхід значно
спрощує взаємодію з сайтом для кінцевого користувача, зменшує барʼєр входу
та забезпечує зручність використання, особливо для мобільних користувачів
або тих, хто просто шукає інформацію.
Важливо також, що система не збирає жодної особистої інформації про
відвідувачів, якщо вони не здійснюють цільових дій, повʼязаних з оплатою
товарів. Усі взаємодії на рівні перегляду контенту відбуваються повністю
анонімно. Це підвищує рівень довіри до ресурсу, оскільки користувач може
бути впевненим, що його поведінка не фіксується і не використовується для
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 54
створення профілю чи передачі третім особам.
Крім того, відсутність системи авторизації на публічному рівні означає
менше точок входу для потенційних атак, що автоматично підвищує безпеку
самої системи. Немає механізмів входу, скидання пароля, реєстрації чи
збереження сесій користувача, що виключає можливості для атак типу brute
force або крадіжки облікових даних. Усе це робить клієнтську частину системи
не лише простою у використанні, а й безпечною з точки зору захисту
користувача та його приватності.
На поточному етапі розвитку система не підтримує функціональність
самостійної реєстрації користувачів. Усі облікові записи, що мають право
створювати публікації, додавати товари або здійснювати інші адміністративні
дії, створюються виключно адміністратором вручну через панель керування.
Такий підхід значно підвищує рівень безпеки, оскільки повністю виключає
можливість несанкціонованого доступу до адміністративного функціоналу з
боку випадкових або зловмисних користувачів.
Відсутність відкритої реєстрації мінімізує ризики, пов'язані з
автоматизованими атаками на систему створення облікових записів, що часто
є мішенню для ботів, фішингу або зловживань. Це дозволяє чітко
контролювати, хто має право публікувати контент, обробляти замовлення,
змінювати налаштування сайту та керувати іншими критично важливими
елементами. Усі користувачі з доступом до внутрішніх модулів є відомими
системі та підтвердженими особами, що унеможливлює випадкові або
навмисні помилки з боку зовнішніх джерел.
Крім того, централізоване створення акаунтів дозволяє адміністратору
встановлювати надійні паролі, керувати правами доступу та швидко реагувати
у випадку потреби — наприклад, видалити обліковий запис або змінити його
рівень доступу. Така модель управління користувачами є надійною для
невеликих і середніх бізнесів, особливо у випадках, коли контроль над
інформаційним простором є пріоритетом.
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 55
4.3 Висновки до розділу
У цьому розділі було детально проаналізовано ключові аспекти захисту
інформації в системах управління контентом (CMS). Встановлено, що
ефективна безпека таких систем досягається лише за умови комплексного
підходу, який охоплює захист на всіх рівнях: від оновлення програмного
забезпечення до контролю доступу, захищеної передачі даних і безпечного
зберігання в базах даних.
Особливу увагу слід приділяти правильній реалізації автентифікації та
авторизації, адже саме ці механізми є першою лінією оборони від
несанкціонованого доступу. Використання надійних паролів, двофакторної
автентифікації, обмеження прав користувачів і сесійний контроль значно
підвищують загальний рівень безпеки системи.
Бази даних, як критично важлива частина CMS, потребують окремого
рівня захисту: хешування паролів, шифрування чутливої інформації,
обмеження прав доступу й захист від SQL-ін’єкцій — це обов’язкові заходи,
що дозволяють уникнути витоків і несанкціонованого доступу.
Передача даних через Інтернет також потребує уваги: використання
HTTPS, HSTS, CSRF- і XSS-захисту забезпечують безпечну комунікацію між
клієнтом і сервером, навіть в умовах публічних мереж.
Таким чином, надійний захист CMS базується на поєднанні технічних
рішень, організаційних політик та регулярного моніторингу, що разом
забезпечують цілісність, конфіденційність і доступність інформації в
сучасному цифровому середовищі.
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 56
ВИСНОВКИ
Проведений аналіз існуючих систем управління контентом (CMS), таких
як WordPress, показав, що попри їхню функціональність і гнучкість, вони
часто не відповідають потребам малого бізнесу через складність
налаштування, перевантаженість плагінами, а також вимоги до технічної
обізнаності користувачів. З огляду на це, особливої актуальності набуває
розроблення спеціалізованих рішень, які з самого початку орієнтовані на
простоту використання, швидке впровадження та готовність до комерційної
діяльності. Результати технологічного аналізу вказали на доцільність
використання сучасного стеку з акцентом на PHP як базову мову
програмування, бази даних типу MySQL, а також монолітну архітектуру, що
забезпечує стабільність і простоту розгортання. Це дозволяє створити
ефективну CMS для бізнесу з можливістю масштабування та адаптації під
змінні потреби.
Розроблена система управління контентом включає ключові модулі для
онлайн-торгівлі, такі як адміністративна панель, клієнтський портал, платіжні
інструменти, SEO-функціонал і власна система кешування. Важливою
перевагою є інтеграція з платіжною системою LiqPay, підтримка українських
хостингів та фокус на користувачів без технічної підготовки. Це дозволяє
підприємцям швидко запускати повноцінні вебресурси, автоматизувати
процеси продажів і забезпечити видимість у пошукових системах.
Особлива увага приділяється питанням інформаційної безпеки. У
дипломній роботі проаналізовано ключові загрози та механізми захисту CMS,
зокрема реалізацію автентифікації й авторизації, безпечне зберігання даних,
захист від SQL-ін’єкцій, XSS і CSRF-атак. Використання HTTPS, HSTS,
шифрування чутливої інформації та контроль сесій дозволяють забезпечити
високий рівень захисту даних користувачів і збереження цілісності бізнес-
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 57
процесів. Комплексний підхід до безпеки, що поєднує технічні й організаційні
рішення, є запорукою надійності й довіри до системи.
Загалом, розроблена CMS є ефективним інструментом для малого та
середнього бізнесу, який дозволяє оперативно запускати сучасні вебресурси з
широкими функціональними можливостями, мінімальними вимогами до
технічних знань користувача та належним рівнем безпеки. Це відповідає
поточним вимогам ринку та цифровим очікуванням підприємців, які прагнуть
швидкого старту та зростання в онлайн-середовищі.
Лист
ЧДТУ.252181.006 ПЗ т
Зм. Лист № докум. Підпис Дата 58
ДОДАТОК А
«ЗАТВЕРДЖУЮ»
Завідувач кафедри ІБ та КІ
д.т.н., професор Віра БАБЕНКО
__________________
«___» ____________ 2025 року
Проектування системи керування контентом для малих
бізнесів з вбудованими інструментами SEO-оптимізації
Специфікація
482.ЧДТУ.52181-01
Листів 2
Розробник ______________ Юрій ЛАВРІНЕНКО
Керівник ______________ Віра БАБЕНКО
Черкаси 2025
2
482.ЧДТУ.52181-01
Позначення Найменування Примітка
Документація
482.ЧДТУ.52181-01 12 01 Текст програми
482.ЧДТУ.52181-01 34 01 Інструкція користувача
ДОДАТОК Б
Проектування системи керування контентом для малих
бізнесів з вбудованими інструментами SEO-оптимізації
Текст програми
482.ЧДТУ.52181-01 12 01
Листів 15
Розробник: ___________ Юрій ЛАВРІНЕНКО
Черкаси 2025
2
482.ЧДТУ.52181-01 12 01
<?php
class Router {
private $routes = [];
public function add($method, $path, $handler) {
$this->routes[] = [
'method' => $method,
'path' => $path,
'handler' => $handler
];
}
public function handle($method, $uri) {
foreach ($this->routes as $route) {
if ($route['method'] === $method && preg_match($route['path'], $uri,
$matches)) {
return call_user_func_array($route['handler'], array_slice($matches, 1));
}
}
return $this->notFound();
}
private function notFound() {
header("HTTP/1.0 404 Not Found");
return ['error' => 'Not Found'];
}
}
class Cache {
private $redis;
public function __construct() {
$this->redis = new Redis();
$this->redis->connect('127.0.0.1', 6379);
}
public function set($key, $value, $ttl = 3600) {
return $this->redis->setex($key, $ttl, serialize($value));
}
public function get($key) {
$value = $this->redis->get($key);
3
482.ЧДТУ.52181-01 12 01
return $value ? unserialize($value) : null;
}
public function delete($key) {
return $this->redis->del($key);
}
}
class MediaHandler {
private $uploadDir;
public function __construct($uploadDir) {
$this->uploadDir = $uploadDir;
}
public function uploadImage($file) {
$fileName = uniqid() . '_' . basename($file['name']);
$targetPath = $this->uploadDir . '/' . $fileName;
if (move_uploaded_file($file['tmp_name'], $targetPath)) {
return $fileName;
}
throw new Exception('Failed to upload file');
}
}
class PostManager {
private $db;
private $cache;
public function __construct($db, $cache) {
$this->db = $db;
$this->cache = $cache;
}
public function createPost($data) {
$stmt = $this->db->prepare("
INSERT INTO posts (title, slug, content, seo_title, seo_description,
featured_image, price, status, created_at, updated_at)
VALUES (?, ?, ?, ?, ?, ?, ?, ?, NOW(), NOW())
");
4
482.ЧДТУ.52181-01 12 01
$result = $stmt->execute([
$data['title'],
$this->generateSlug($data['title']),
$data['content'],
$data['seo_title'],
$data['seo_description'],
$data['featured_image'],
$data['price'],
$data['status']
]);
if ($result) {
$this->cache->delete('posts_list');
return $this->db->lastInsertId();
}
return false;
}
private function generateSlug($title) {
$slug = strtolower(trim(preg_replace('/[^A-Za-z0-9-]+/', '-', $title)));
return $slug;
}
}
class CategoryManager {
private $db;
public function __construct($db) {
$this->db = $db;
}
public function createCategory($name, $parentId = null) {
$stmt = $this->db->prepare("
INSERT INTO categories (name, parent_id, created_at)
VALUES (?, ?, NOW())
");
return $stmt->execute([$name, $parentId]);
}
public function getCategoryTree() {
$categories = $this->getAllCategories();
return $this->buildTree($categories);
5
482.ЧДТУ.52181-01 12 01
}
private function buildTree(array $elements, $parentId = null) {
$branch = [];
foreach ($elements as $element) {
if ($element['parent_id'] == $parentId) {
$children = $this->buildTree($elements, $element['id']);
if ($children) {
$element['children'] = $children;
}
$branch[] = $element;
}
}
return $branch;
}
}
class MetaTagGenerator {
private $post;
public function __construct($post) {
$this->post = $post;
}
public function generate() {
return [
'title' => $this->post['seo_title'] ?: $this->post['title'],
'description' => $this->post['seo_description'],
'og:title' => $this->post['title'],
'og:description' => $this->post['seo_description'],
'og:image' => $this->post['featured_image'],
'twitter:card' => 'summary_large_image',
'twitter:title' => $this->post['title'],
'twitter:description' => $this->post['seo_description'],
'twitter:image' => $this->post['featured_image']
];
}
}
class PaymentProcessor {
private $db;
private $liqpay;
6
482.ЧДТУ.52181-01 12 01
public function __construct($db) {
$this->db = $db;
$this->liqpay = new Payment();
}
public function processPayment($orderId, $amount, $currency = 'USD') {
$payment = $this->liqpay->createPayment($orderId, $amount, "Order
#$orderId");
$stmt = $this->db->prepare("
INSERT INTO payments (order_id, amount, currency, status, created_at)
VALUES (?, ?, ?, 'pending', NOW())
");
$stmt->execute([$orderId, $amount, $currency]);
return $payment;
}
public function handleCallback($data) {
if ($this->liqpay->validatePayment($data['data'], $data['signature'])) {
$paymentData = json_decode(base64_decode($data['data']), true);
$stmt = $this->db->prepare("
UPDATE payments
SET status = ?,
transaction_id = ?,
updated_at = NOW()
WHERE order_id = ?
");
return $stmt->execute([
$paymentData['status'],
$paymentData['transaction_id'],
$paymentData['order_id']
]);
}
return false;
}
}
class SearchEngine {
7
482.ЧДТУ.52181-01 12 01
private $db;
public function __construct($db) {
$this->db = $db;
}
public function search($query, $filters = []) {
$sql = "
SELECT p.*, c.name as category_name
FROM posts p
LEFT JOIN post_categories pc ON p.id = pc.post_id
LEFT JOIN categories c ON pc.category_id = c.id
WHERE MATCH(p.title, p.content) AGAINST(? IN BOOLEAN MODE)
";
$params = [$query];
if (!empty($filters['category'])) {
$sql .= " AND c.id = ?";
$params[] = $filters['category'];
}
if (!empty($filters['date_from'])) {
$sql .= " AND p.created_at >= ?";
$params[] = $filters['date_from'];
}
$stmt = $this->db->prepare($sql);
$stmt->execute($params);
return $stmt->fetchAll(PDO::FETCH_ASSOC);
}
}
class StatisticsCollector {
private $db;
public function __construct($db) {
$this->db = $db;
}
public function logPageView($postId, $userId = null) {
$stmt = $this->db->prepare("
8
482.ЧДТУ.52181-01 12 01
INSERT INTO page_views (post_id, user_id, ip_address, user_agent,
viewed_at)
VALUES (?, ?, ?, ?, NOW())
");
return $stmt->execute([
$postId,
$userId,
$_SERVER['REMOTE_ADDR'],
$_SERVER['HTTP_USER_AGENT']
]);
}
public function getViewStats($period = 'day') {
$sql = "
SELECT
DATE(viewed_at) as date,
COUNT(*) as views,
COUNT(DISTINCT ip_address) as unique_views
FROM page_views
WHERE viewed_at >= DATE_SUB(NOW(), INTERVAL 1 $period)
GROUP BY DATE(viewed_at)
ORDER BY date DESC
";
$stmt = $this->db->prepare($sql);
$stmt->execute();
return $stmt->fetchAll(PDO::FETCH_ASSOC);
}
}
class RateLimiter {
private $redis;
public function __construct() {
$this->redis = new Redis();
$this->redis->connect('127.0.0.1', 6379);
}
public function checkLimit($key, $limit, $window) {
$current = $this->redis->get($key);
9
482.ЧДТУ.52181-01 12 01
if (!$current) {
$this->redis->setex($key, $window, 1);
return true;
}
if ($current >= $limit) {
return false;
}
$this->redis->incr($key);
return true;
}
}
class Logger {
private $logFile;
public function __construct($logFile) {
$this->logFile = $logFile;
}
public function log($level, $message, $context = []) {
$log = sprintf(
"[%s] %s: %s %s\n",
date('Y-m-d H:i:s'),
strtoupper($level),
$message,
json_encode($context)
);
return file_put_contents($this->logFile, $log, FILE_APPEND);
}
}
class BackupManager {
private $db;
private $backupDir;
public function __construct($db, $backupDir) {
$this->db = $db;
$this->backupDir = $backupDir;
}
10
482.ЧДТУ.52181-01 12 01
public function createBackup() {
$tables = $this->getTables();
$backup = '';
foreach ($tables as $table) {
$backup .= $this->getTableStructure($table);
$backup .= $this->getTableData($table);
}
$filename = $this->backupDir . '/backup_' . date('Y-m-d_H-i-s') . '.sql';
return file_put_contents($filename, $backup);
}
private function getTables() {
$stmt = $this->db->query('SHOW TABLES');
return $stmt->fetchAll(PDO::FETCH_COLUMN);
}
}
class SecurityManager {
public function sanitizeInput($data) {
if (is_array($data)) {
return array_map([$this, 'sanitizeInput'], $data);
}
return htmlspecialchars($data, ENT_QUOTES, 'UTF-8');
}
public function generateCSRFToken() {
if (empty($_SESSION['csrf_token'])) {
$_SESSION['csrf_token'] = bin2hex(random_bytes(32));
}
return $_SESSION['csrf_token'];
}
public function validateCSRFToken($token) {
return isset($_SESSION['csrf_token']) &&
hash_equals($_SESSION['csrf_token'], $token);
}
}
<?php
11
482.ЧДТУ.52181-01 12 01
define('DB_HOST', 'localhost');
define('DB_USER', 'your_username');
define('DB_PASS', 'your_password');
define('DB_NAME', 'cms_db');
define('LIQPAY_PUBLIC_KEY', 'your_public_key');
define('LIQPAY_PRIVATE_KEY', 'your_private_key');
class Database {
private $conn;
public function __construct() {
try {
$this->conn = new PDO(
"mysql:host=" . DB_HOST . ";dbname=" . DB_NAME,
DB_USER,
DB_PASS
);
$ t h i s - > c o n n - > s e t A t t r i b u t e ( P D O : : A T T R _ E R R M O D E ,
PDO::ERRMODE_EXCEPTION);
} catch(PDOException $e) {
die("Connection failed: " . $e->getMessage());
}
}
public function getConnection() {
return $this->conn;
}
}
<?php
class Post {
private $conn;
public function __construct($db) {
$this->conn = $db;
}
public function createPost($title, $content, $seo_title, $seo_description, $price =
null) {
$query = "INSERT INTO posts
(title, content, seo_title, seo_description, price, created_at)
VALUES
12
482.ЧДТУ.52181-01 12 01
(:title, :content, :seo_title, :seo_description, :price, NOW())";
$stmt = $this->conn->prepare($query);
return $stmt->execute([
':title' => $title,
':content' => $content,
':seo_title' => $seo_title,
':seo_description' => $seo_description,
':price' => $price
]);
}
public function getAllPosts() {
$query = "SELECT * FROM posts ORDER BY created_at DESC";
$stmt = $this->conn->prepare($query);
$stmt->execute();
return $stmt->fetchAll(PDO::FETCH_ASSOC);
}
public function getPostById($id) {
$query = "SELECT * FROM posts WHERE id = :id";
$stmt = $this->conn->prepare($query);
$stmt->execute([':id' => $id]);
return $stmt->fetch(PDO::FETCH_ASSOC);
}
}
<?php
class Admin {
private $conn;
public function __construct($db) {
$this->conn = $db;
}
public function login($username, $password) {
$query = "SELECT * FROM admins WHERE username = :username";
$stmt = $this->conn->prepare($query);
$stmt->execute([':username' => $username]);
13
482.ЧДТУ.52181-01 12 01
$admin = $stmt->fetch(PDO::FETCH_ASSOC);
if($admin && password_verify($password, $admin['password'])) {
$_SESSION['admin_id'] = $admin['id'];
return true;
}
return false;
}
public function isLoggedIn() {
return isset($_SESSION['admin_id']);
}
}
<?php
class Payment {
private $public_key;
private $private_key;
public function __construct() {
$this->public_key = LIQPAY_PUBLIC_KEY;
$this->private_key = LIQPAY_PRIVATE_KEY;
}
public function createPayment($order_id, $amount, $description) {
$params = [
'action' => 'pay',
'amount' => $amount,
'currency' => 'USD',
'description' => $description,
'order_id' => $order_id,
'version' => '3',
'public_key' => $this->public_key
];
$data = base64_encode(json_encode($params));
$signature = base64_encode(sha1($this->private_key . $data .
$this->private_key, 1));
return [
'data' => $data,
'signature' => $signature
14
482.ЧДТУ.52181-01 12 01
];
}
public function validatePayment($data, $signature) {
$sign = base64_encode(sha1($this->private_key . $data . $this->private_key,
1));
return $sign === $signature;
}
}
<?php
class Seo {
private $conn;
public function __construct($db) {
$this->conn = $db;
}
public function generateSitemap() {
$query = "SELECT id, title, updated_at FROM posts";
$stmt = $this->conn->prepare($query);
$stmt->execute();
$posts = $stmt->fetchAll(PDO::FETCH_ASSOC);
$xml = '<?xml version="1.0" encoding="UTF-8"?>';
$xml .= '<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">';
foreach($posts as $post) {
$xml .= '<url>';
$xml .= '<loc>https://yoursite.com/post/' . $post['id'] . '</loc>';
$xml .= '<lastmod>' . date('Y-m-d', strtotime($post['updated_at'])) .
'</lastmod>';
$xml .= '<changefreq>weekly</changefreq>';
$xml .= '<priority>0.8</priority>';
$xml .= '</url>';
}
$xml .= '</urlset>';
file_put_contents($_SERVER['DOCUMENT_ROOT'] . '/sitemap.xml', $xml);
}
15
482.ЧДТУ.52181-01 12 01
public function insertGoogleAnalytics($tracking_id) {
return "
<!-- Google Analytics -->
<script async
src='https://www.googletagmanager.com/gtag/js?id={$tracking_id}'></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', '{$tracking_id}');
</script>
";
}
}
ДОДАТОК В
Проектування системи керування контентом для малих
бізнесів з вбудованими інструментами SEO-оптимізації
Інструкція користувача
482.ЧДТУ.52181-01 34 01
Листів 4
Розробник: ____________ Юрій ЛАВРІНЕНКО
Черкаси 2025
2
482.ЧДТУ.52181-01 34 01
Для успішного запуску розробленої системи керування контентом на
хостингу необхідно виконати кілька послідовних кроків. Ця інструкція
допоможе навіть користувачам із базовими знаннями в адмініструванні
вебсайтів швидко і безпомилково встановити систему та налаштувати її для
подальшої роботи.
Спершу потрібно обрати відповідний хостинг, який підтримує мову
програмування PHP версії не нижче 7.4, а також має можливість працювати з
базою даних MySQL або MariaDB. Більшість сучасних shared hosting сервісів
задовольняють ці вимоги, що дозволяє встановити систему практично будь-
де. Рекомендується перевірити, що на обраному хостингу є доступ до панелі
керування (наприклад, cPanel, Plesk або подібної) для зручного управління
файлами, базами даних та іншими сервісами.
Після вибору та придбання хостингу потрібно завантажити архів із
системою, який надається у вигляді бандлу. Цей пакет містить всі необхідні
файли для роботи програми. Завантаження можна здійснити через панель
керування хостингом або за допомогою FTP/SFTP клієнта (наприклад,
FileZilla). Розпакуйте архів у кореневу директорію вашого вебсайту або у
підкаталог, якщо ви плануєте запускати систему як частину більшого ресурсу.
Наступним важливим кроком є створення бази даних MySQL. Зайдіть у
панель керування хостингом та знайдіть розділ для роботи з базами даних.
Створіть нову базу, вкажіть унікальне ім’я для неї, а також створіть
користувача з надійним паролем, якому надайте повні права доступу до цієї
бази. Ці дані знадобляться для підключення системи до бази.
Після створення бази даних відкрийте файл конфігурації системи, який
знаходиться у каталозі з програмою (зазвичай це файл config.php або
подібний). У ньому необхідно вказати параметри підключення: ім’я сервера
бази даних (зазвичай localhost), назву бази даних, ім’я користувача та пароль.
3
482.ЧДТУ.52181-01 34 01
Також у конфігурації можна налаштувати деякі базові параметри роботи
системи, наприклад, налаштування кешування або інтеграції з платіжними
системами.
Після збереження конфігураційного файлу відкрийте у браузері адресу
вашого сайту, де розміщена система. Якщо всі попередні кроки були виконані
коректно, запуститься скрипт встановлення, який автоматично створить
необхідні таблиці в базі даних і завершить первинну конфігурацію. У разі
виникнення помилок слід уважно прочитати повідомлення системи —
зазвичай вони вказують на проблеми з доступом до бази, правами на файли
або несумісністю версій.
Після успішного завершення встановлення у вас буде доступ до панелі
адміністратора, де можна почати налаштовувати вебсайт, додавати новини,
товари та керувати SEO-параметрами. Для входу в адміністративний розділ
використовуйте облікові дані, які були створені під час інсталяції або за
замовчуванням, якщо це передбачено системою.
Слід звернути увагу на те, що для коректної роботи платіжної системи
LiqPay необхідно зареєструватися на офіційному порталі LiqPay і отримати
ключі API. Ці ключі потрібно буде вказати в налаштуваннях системи для
інтеграції платежів. Також рекомендується налаштувати захищене з’єднання
HTTPS, щоб гарантувати безпеку передачі даних між користувачами і
сервером.
Важливо періодично оновлювати систему, застосовувати патчі та
стежити за версіями PHP і MySQL, які використовує ваш хостинг. Це
дозволить підтримувати стабільність роботи та захищеність ресурсу від
потенційних вразливостей.
Таким чином, дотримуючись цих кроків, навіть користувач без
спеціалізованих технічних знань зможе встановити і запустити систему на
4
482.ЧДТУ.52181-01 34 01
будь-якому стандартному хостингу, отримуючи повний функціонал для
швидкого створення власного сайту з можливістю публікацій та продажу
товарів. Усі налаштування описані у докладній інструкції, яка додається до
пакету системи, що робить процес максимально зрозумілим і доступним.
СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ
1. Барановський В. Системи управління контентом: огляд, аналіз,
впровадження. Вісник НТУУ “КПІ”. 2021. №3. С. 45–51.
2. Мельник І., Петров О. Розробка вебзастосунків з використанням сучасних
CMS. Інформаційні технології і комп’ютерна інженерія. 2022. №1(19).
С. 33–40.
3. Коваленко Ю. Впровадження SEO у малий бізнес: технічні та стратегічні
аспекти. Економіка і суспільство. 2023. №50. С. 118–123.
4. Степаненко Н. Порівняльний аналіз CMS для електронної комерції.
Інформаційні технології та системи. 2021. №4. С. 75–81.
5. Васильєва Т., Шевчук Д. Хмарні рішення для малого бізнесу: CMS, SEO,
CRM. Бізнес-інформ. 2022. №6. С. 103–108.
6. Duckett J. Beginning HTML, XHTML, CSS, and JavaScript. Indianapolis: Wiley
Publishing, 2011. 864 p.
7. Nixon R. Learning PHP, MySQL & JavaScript: With jQuery, CSS & HTML5.
Sebastopol : O’Reilly Media, 2021. 832 p.
8. Freeman A., Sanderson A. Pro ASP.NET Core MVC 2. New York : Apress, 2017.
1017 p.
9. Flanagan D. JavaScript: The Definitive Guide. 7th ed. Sebastopol : O’Reilly
Media, 2020. 706 p.
10. Valade J. PHP & MySQL Everyday Apps For Dummies. Hoboken : Wiley, 2005.
550 p.
11. Williams R., Tollett J. The Non-Designer’s Web Book. 3rd ed. Berkeley :
Peachpit Press, 2006. 432 p.
12. Kurniawan B. Node.js Web Development. Birmingham : Packt Publishing, 2020.
412 p.
13. Beighley L., Morrison M. Head First PHP & MySQL. Sebastopol : O’Reilly
Media, 2009. 812 p.
Арк.
ЧДТУ.252181.006 ПЗ 80
Змн. Арк. № докум. Підпис Дата
14. Kaur G. Content Management Systems: A Comparative Study. International
Journal of Computer Applications. 2018. Vol. 179(21). P. 5–9.
15. Nguyen T. Understanding SEO for E-commerce. Journal of Digital Marketing.
2021. Vol. 15(2). P. 36–42.
16. Withee K. Microsoft SharePoint For Dummies. 3rd ed. Hoboken : Wiley, 2019.
408 p.
17. Mednieks Z., Dornin L., Meike G., Nakamura M. Programming Android.
Sebastopol : O’Reilly Media, 2012. 792 p.
18. Resig J., Bibeault B. Secrets of the JavaScript Ninja. 2nd ed. Shelter Island :
Manning, 2016. 440 p.
19. Welling L., Thomson L. PHP and MySQL Web Development. 5th ed. Boston :
Addison-Wesley, 2016. 1008 p.
20. MacDonald M. Beginning ASP.NET for Visual Studio 2015. New York : Apress,
2015. 812 p.
21. Yakovlev M. Web Security Essentials. Cambridge : CyberSec Books, 2021.
294 p.
22. White J. Pro Web SEO Techniques. New York : Apress, 2020. 350 p.
23. Jamsa K. Cloud Computing. Burlington : Jones & Bartlett Learning, 2013. 456
p.
24. Batra D., Mittal N. Comparative Analysis of Open-Source CMS. International
Journal of Computer Science and Engineering. 2020. Vol. 8(3). P. 45–52.
25. Desai A. Modern Web Development with HTML5 and CSS. Birmingham : Packt
Publishing, 2021. 300 p.
Арк.
ЧДТУ.252181.006 ПЗ 81
Змн. Арк. № докум. Підпис Дата