26. Размещение сайта WordPress на VPS с Apache

Цель: пошаговое развертывание 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 через браузер

  1. Открываем http://IP_сервера/wordpress
  2. Следуем мастеру установки:
    • Вводим имя базы, пользователя и пароль (wordpress_db, wp_user, ПарольСложный123)
    • Создаём администратора
    • Настраиваем язык, название сайта
  3. Проверяем работу:
  • Страница админки: 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.

Переход с Астра Линукс на Дебиан

Оставьте комментарий