У цій статті я розгляну ази роботи з XAMPP: як розгорнути локальний сервер в Linux, як встановити і працювати з сайтом локально, як перенести сайт на локальний сервер або навпаки з сервера на віртуальний хостинг.
Що таке XAMPP?
XAMPP — це локальний кросплатформний веб-сервер з відкритим кодом та підтримкою усіх популярних операційних систем: Windows, Mac, Linux. Назва є акронімом і походить від перших літер: X (усі операційні системи), A (веб-сервер Apache), M (MySQL база даних), P (PHP) і P (Perl).
Існує безліч аналогів XAMPP, наприклад: LAMP (Linux + Apache + MySQL + PHP), LEMP (Linux + Nginx + MariaDB + PHP), WAMP (Windows + Apache + MySQL + PHP), MEAN (MongoDB + Express + Angular + Node. js), Denwer, AMPPS, OpenServer, Vertigo тощо.

Особливості і переваги XAMPP:
- Безкоштовний, легкий в освоєнні та простий в обслуговуванні;
- Дружній, зручний й компактний інтерфейс;
- Функціональний, багатозадачний веб-сервер;
- Швидке керування сервісними службами;
- У комплект XAMPP входять усі необхідні компоненти для розгортання: Apache, MySQL, MariaDB, PHP, Perl, phpMyAdmin, FTP FileZilla, Webalizer та ін.
- Відмінна технічна документація й спільнота підтримки.
З недоліків: складний в налаштуванні поштовий сервер, а також не надто оптимізована робота з MySQL-базою даних. XAMPP працює тільки з веб-серверами Apache.
XAMPP допоможе:
- Протестувати бекенд та фронтенд сайту ще до запуску в інтернеті;
- Провести відладку (debug) багів і проблем на локальному комп’ютері;
- Встановлювати різноманітні CMS та працювати з ними без підключення до інтернету;
- Працювати з сайтом офлайн, планувати майбутню структуру і наповнювати її, повністю підготувати сайт до перенесення на віртуальний VPS-сервер;
- Навчитись основам веб-програмування та адмініструванню сайтів.
Встановлення XAMPP в Linux
Достатньо завантажити з офіційного сайту інсталлер, перейти в активну дерикторію й виконати наступні команди:
sudo chmod +x <file-to-give-execute-permission>.runsudo ./<file>.run
Запуститься менеджер встановлення:
Дочекайтеся успішного повідомлення від менеджера: “Setup has finished installing XAMPP on your computer”.
Тепер виконайте команду запуску XAMPP:
sudo /opt/lampp/lampp start
Отримаєте повідомлення про успішний запуск Apache, MySQL та FTP-серверів:
Ви також можете керувати веб-сервером XAMPP через веб-інтерфейс, для цього перейдіть в папку /opt/lampp і запустіть виконуючий файл sudo ./manager-linux-x64.run:
Основні команди XAMPP:
sudo /opt/lampp/lampp start– запустити XAMPP;sudo /opt/lampp/lampp stop– зупинити XAMPP;sudo /opt/lampp/lampp restart– перезапустити XAMPP;systemctl stop apache2.service– зупинити Apache-сервер;
Щоб переконатися, що веб-сервер працює, необхідно перейти за URL-адресою у браузері: http://localhost/dashboard.
З’явиться стартова сторінка XAMPP:
Панель упраління базою даних PhpMyAdmin доступна за URL-адресою: http://localhost/phpmyadmin/

Веб-сайти, CMS-системи і будь-які інші ресурси розгортаються в директорії: /opt/lampp/htdocs/
Щоб відкрити ресурс на локальному сервері, необхідно відкрити URL: http://localhost/назва_сайту
Також ви можете скористатися компонентом Bitnami Apps, який дозволить в автоматичному режимі розгорнути XAMPP + будь-яку CMS:

В разі потреби, можна додатково запустити FTP-сервер – ProFTPd. Це дозволить вам працювати з сайтами через FTP-менеджер (наприклад, FileZilla), з’явиться також можливість оновлювати WordPress через FTP, встановлювати плагіни з офіційного репозиторію і т.д.
Детальніше як налаштувати FTP на XAMPP читайте в офіційній документації за посиланням.
Як вручну розгорнути WordPress на XAMPP?
- Завантажити zip-архів з WordPress з офіційного сайту.
- Розархівувати в папку з сайтом:
/opt/lampp/htdocs/yourwebsite - Перейти в PhpMyAdmin та створити базу даних:
http://localhost/phpmyadmin/ - Зв’язати базу даних з WordPress в файлі конфігурації
wp-config.php - Перейти за URL-адресою: http://localhost/yourwebsite й розпочати процес встановлення WordPress.
Подібним чином можна розгорнути будь-яку CMS чи платформу.
Як перенести існуючий сайт на WordPress на локальний XAMPP сервер?
Алгоритм простий й мало чим відрізняється від перенесення сайту з одного хостингу на інший:
- Експортувати, зробити дамп бази даних сайту.
- Відкрити базу даних в текстовому редакторі (наприклад, в Sublime Text або SciTE) й з допомогою функціії Find and Replace замінити усі шляхи та домен сайту на нові:
http://localhost/yourwebsite - Зробити резервну копію (backup) всіх файлів і папок сайту й розпакувати їх у папку з сайтом на локальному комп’ютері зі збереженням всіх прав (File permissions):
/opt/lampp/htdocs/yourwebsite - Запустити XAMPP-сервер і усі його сервіси.
- Перейти в PhpMyAdmin (
localhost/phpmyadmin) і створити нову базу даних та користувача в MyPhpAdmin. Імпортувати дамп бази даних. - У файлі WordPress
wp-config.phpпрописати доступ до бази даних:DB_NAME, DB_USER, DB_PASSWORD, DB_HOST. Наприклад: mydatabase, root, ‘пароль залишаємо порожнім’, localhost. - Відкрити сайт і авторизуватись в WordPress, перейти в Налаштування -> Постійні посилання. І оновити їх – натиснувши зберегти. URL-адреси успішно оновляться й сторінки стануть доступними.
Додаткові зауваження та рекомендації:
Для коректної роботи сайту на WordPress рекомендується додати в .htaccess наступні директиви:
RewriteEngine on
RewriteCond $1 !^(index\.php|resources|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [QSA,L] Права на файли і папки WordPress мають бути виставлені згідно правил, наприклад 0755 для папок та 0644 для файлів. Щоб не виставляти їх вручну, можна скористатись командами:
sudo find /opt/lampp/htdocs/yourwebsite/ -type d -exec chmod 755 {} \;sudo find /opt/lampp/htdocs/yourwebsite/ -type f -exec chmod 644 {} \;
Якщо база даних MySQL габаритна, то рекомендую імпортувати її не через веб-інтерфейс PhpMyAdmin, а командний рядок:
/opt/lampp/bin/mysql -h localhost -u root -pmysql -u username -p database < dump.sql
Як перенести сайт з локального XAMPP-сервера на віртуальний хостинг/сервер
- В панелі адміністрування WordPress в налаштуваннях змінити URL-адресу сайту (вказати новий домен);
- Перейти в PhpMyAdmin й експортувати базу даних;
- Відкрити базу даних й провести заміну старих шляхів, домену і URL-адреси сайту (
http://localhost/yourwebsite) на нові з існуючим доменом; - Перенести файли та папки сайту на віртуальний хостинг/сервер;
- Імпортувати базу даних та зв’язати її з сайтом.
Корисні посилання
- Apache Friends Support Forum
- FAQ XAMPP for Windows
- FAQ XAMPP for Linux
- XAMPP Addons
- Bitnami Resources
- Bitnami Docs
Автор: © Konrad Ravenstone, KR. Laboratories Research





