Цель: пошаговое развертывание WordPress на сервере с Apache, с базой данных MySQL/MariaDB, настройкой прав и проверкой работоспособности.
1️⃣ Установка Apache
sudo apt update
sudo apt install apache2
sudo systemctl enable apache2
sudo systemctl start apache2
Проверка работы:
- Открой браузер →
http://IP_сервера/ - Должна появиться страница Apache «It works!»
Возможные ошибки:
- Порт 80 занят → проверить:
sudo lsof -i :80 - Apache не запускается → проверить логи:
sudo journalctl -xeилиsudo tail -n 50 /var/log/apache2/error.log
2️⃣ Установка PHP
WordPress требует PHP (рекомендуется PHP 7.4+):
sudo apt install php php-mysql libapache2-mod-php php-curl php-gd php-mbstring php-xml php-xmlrpc php-soap php-intl php-zip php-cli php-common
sudo systemctl restart apache2
Проверка версии PHP:
php -v
3️⃣ Установка базы данных (MariaDB/MySQL)
sudo apt install mariadb-server mariadb-client
sudo systemctl enable mariadb
sudo systemctl start mariadb
Создание базы данных для WordPress:
sudo mysql -u root -p
CREATE DATABASE wordpress_db DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
CREATE USER 'wp_user'@'localhost' IDENTIFIED BY 'ПарольСложный123';
GRANT ALL PRIVILEGES ON wordpress_db.* TO 'wp_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Возможные ошибки:
- «Access denied» → проверить пароль root, убедиться, что используете
sudo mysql - Кодировка → важно utf8 или utf8mb4 для корректного отображения символов
4️⃣ Скачивание WordPress
cd /tmp
wget https://ru.wordpress.org/latest-ru_RU.tar.gz
tar -xvzf latest-ru_RU.tar.gz
sudo mv wordpress /var/www/html/wordpress
Проверка прав:
sudo chown -R www-data:www-data /var/www/html/wordpress
sudo chmod -R 755 /var/www/html/wordpress
5️⃣ Настройка Apache для WordPress
Создаём виртуальный хост:
sudo nano /etc/apache2/sites-available/wordpress.conf
Содержание:
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /var/www/html/wordpress
ServerName yourdomain.com
ServerAlias www.yourdomain.com
<Directory /var/www/html/wordpress>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/wordpress_error.log
CustomLog ${APACHE_LOG_DIR}/wordpress_access.log combined
</VirtualHost>
Активируем сайт:
sudo a2ensite wordpress.conf
sudo a2enmod rewrite
sudo systemctl restart apache2
Возможные ошибки:
- «500 Internal Server Error» → чаще всего права файлов или
.htaccess - «403 Forbidden» → проверьте
AllowOverride Allи владельца папки
6️⃣ Запуск установки WordPress через браузер
- Открываем
http://IP_сервера/wordpress - Следуем мастеру установки:
- Вводим имя базы, пользователя и пароль (
wordpress_db,wp_user,ПарольСложный123) - Создаём администратора
- Настраиваем язык, название сайта
- Вводим имя базы, пользователя и пароль (
- Проверяем работу:
- Страница админки:
http://IP_сервера/wordpress/wp-admin - Главная:
http://IP_сервера/wordpress
7️⃣ Дополнительные советы
- Резервные копии базы:
mysqldump -u wp_user -p wordpress_db > wordpress_backup.sql
- Обновление PHP и Apache через
apt update && apt upgrade - Проверка логов при любых проблемах:
sudo tail -f /var/log/apache2/error.log
💡 Вывод:
Теперь у вас полностью готовый сайт WordPress на Apache с базой MariaDB.
Если потребуется, можно добавить SSL, перенаправление на HTTPS и оптимизацию под SEO.