Нужен ли вам VPS для WordPress
Честный ответ: для большинства сайтов не нужен. На обычном хостинге WordPress ставится в пару кликов, а обновления системы, безопасность PHP и базы берёт на себя хостер. На VPS всё это ваша ответственность: обновления, файрвол, резервные копии, починка при сбоях.
VPS имеет смысл, когда нужны особые настройки сервера, несколько сайтов под полным контролем или нестандартные расширения. Сравнение вариантов есть в статьях VPS или хостинг и хостинг для WordPress. Тарифы обычного хостинга начинаются от 147 ₽, подробнее на странице хостинг для сайта.
Если выбрали VPS, ниже полный порядок установки. Для небольшого сайта обычно хватает конфигурации в 1–2 ядра и 2 ГБ памяти: подбор VPS, страница VPS для WordPress.
Проверено на сервере 5 октября 2026 года: команды из этой статьи выполнены по порядку на новом VPS с Ubuntu 26.04. Для Ubuntu 24.04 команды те же, но на ней мы их не прогоняли.
Подготовка
Нужен сервер с Ubuntu 24.04 или 26.04, пользователь с sudo и домен (пусть example.com), указывающий на IP сервера. Первичную настройку смотрите в этой статье.
Шаг 1. Установите пакеты
sudo apt update
sudo apt install nginx mariadb-server php-fpm php-mysql php-curl php-gd php-intl php-mbstring php-xml php-zip
Ставятся веб-сервер nginx, база данных MariaDB, обработчик PHP (php-fpm) и расширения PHP, которые WordPress использует для работы с базой, картинками, строками и архивами. Версия PHP зависит от системы: в Ubuntu 24.04 или 26.04 это 8.3, в Ubuntu 26.04 это 8.5.
Откройте веб-порты в файрволе:
sudo ufw allow 'Nginx Full'
Правило разрешает порты 80 и 443 одним профилем.
Шаг 2. Защитите MariaDB
sudo mariadb-secure-installation
Мастер задаёт вопросы: удалить анонимных пользователей, закрыть удалённый вход для root, убрать тестовую базу. На большинство можно отвечать утвердительно, читайте вопросы внимательно.
Шаг 3. Создайте базу и пользователя
sudo mariadb
В открывшейся консоли выполните (придумайте свой пароль вместо СложныйПароль):
CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'wpuser'@'localhost' IDENTIFIED BY 'СложныйПароль';
GRANT ALL PRIVILEGES ON wordpress.* TO 'wpuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Создаётся база wordpress, пользователь wpuser, который может подключаться только с самого сервера, и ему выдаются права только на эту базу. Пароль и имена запомните: они понадобятся при установке.
Шаг 4. Скачайте WordPress
cd /tmp
curl -O https://wordpress.org/latest.tar.gz
tar -xzf latest.tar.gz
sudo mkdir -p /var/www/example.com
sudo cp -a wordpress/. /var/www/example.com/
Команды скачивают последнюю версию с wordpress.org, распаковывают архив и копируют файлы в папку сайта.
Шаг 5. Права на файлы
sudo chown -R www-data:www-data /var/www/example.com
sudo find /var/www/example.com -type d -exec chmod 755 {} \;
sudo find /var/www/example.com -type f -exec chmod 644 {} \;
Владельцем становится www-data, пользователь, под которым работают nginx и PHP-FPM. Папкам даются права 755, файлам 644. Так WordPress сможет сам загружать картинки и обновлять плагины, а посторонние не смогут менять файлы.
Шаг 6. Конфигурация nginx
sudo nano /etc/nginx/sites-available/example.com
Минимальный рабочий блок:
server {
listen 80;
server_name example.com www.example.com;
root /var/www/example.com;
index index.php;
client_max_body_size 64M;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php-fpm.sock;
}
location ~ /\.ht {
deny all;
}
}
Путь /run/php/php-fpm.sock общий и не зависит от версии PHP. Проверить, что он есть, можно командой ls /run/php/.
Что делают части: root указывает папку сайта, try_files передаёт обращения к красивым адресам в index.php, блок \.php$ отдаёт PHP-файлы на обработку PHP-FPM через сокет, client_max_body_size разрешает загружать файлы до 64 МБ, последний блок скрывает служебные файлы .htaccess.
Включите сайт и проверьте настройки:
sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx
Первая команда подключает конфигурацию, nginx -t проверяет синтаксис, reload применяет без остановки. Стандартный сайт nginx можно отключить командой sudo rm /etc/nginx/sites-enabled/default, если он мешает.
Шаг 7. Завершите установку в браузере
Откройте http://example.com. WordPress предложит выбрать язык, затем спросит данные базы: имя wordpress, пользователь wpuser, пароль из шага 3, сервер localhost. Затем введите название сайта и создайте учётную запись администратора с уникальным паролем.
Установщик создаёт файл wp-config.php с паролем базы и оставляет его открытым для чтения всем пользователям сервера. Закройте его:
sudo chmod 640 /var/www/example.com/wp-config.php
Теперь файл читают только владелец www-data и его группа.
После установки подключите HTTPS: бесплатный SSL на VPS.
Что делать после установки
- Включите обновления WordPress и плагинов, удалите неиспользуемые темы и плагины.
- Настройте резервные копии: файлы сайта и дамп базы командой
mariadb-dump. - Если сайт уже есть на другом хостинге, прочитайте перенос сайта.
Что делать дальше
Подберите сервер по ресурсам: подбор VPS или VPS для WordPress. Если администрировать сервер не хочется, сравните хостинг для сайта.
