−25%

на годовую оплату Windows, до 31.10. К тарифам

EQVPS

Как установить WordPress на VPS (Nginx, PHP, MariaDB)

Чистая установка WordPress на Ubuntu 24.04 с Nginx, PHP-FPM, MariaDB и бесплатным HTTPS — плюс настройки, которые важны для скорости и безопасности.

Управляемый хостинг WordPress берёт деньги за каждый сайт и прячет настройки. На своём VPS у вас весь сервер, столько сайтов, сколько он вытянет, и полный контроль над PHP и кешированием. Классический стек — Nginx, PHP-FPM, MariaDB — ставится на Ubuntu 24.04 минут за пятнадцать.

Перед началом: нужен тариф с выделенным IP (посетители подключаются к портам 80/443; NAT-тарифы не принимают входящий веб-трафик) и домен, чья A-запись указывает на сервер. Micro-IP за $10/мес — удобный дом для обычного сайта.

1. Установите стек

apt update
apt install -y nginx mariadb-server php8.3-fpm php8.3-mysql php8.3-curl \
  php8.3-gd php8.3-intl php8.3-mbstring php8.3-xml php8.3-zip

2. Создайте базу данных

MariaDB в Ubuntu пускает root через локальный сокет без пароля:

mariadb <<'SQL'
CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8mb4;
CREATE USER 'wp'@'localhost' IDENTIFIED BY 'use-a-long-random-password';
GRANT ALL PRIVILEGES ON wordpress.* TO 'wp'@'localhost';
FLUSH PRIVILEGES;
SQL

3. Скачайте WordPress

cd /tmp && curl -O https://wordpress.org/latest.tar.gz
tar xzf latest.tar.gz
mv wordpress /var/www/example.com
chown -R www-data:www-data /var/www/example.com

4. Настройте Nginx

cat > /etc/nginx/sites-available/example.com <<'EOF'
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/php8.3-fpm.sock;
    }

    location ~ /\.(?!well-known) { deny all; }
}
EOF

ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/
rm -f /etc/nginx/sites-enabled/default
nginx -t && systemctl reload nginx

Строка try_files и заставляет работать красивые постоянные ссылки — это аналог правил .htaccess WordPress для Nginx.

Поднимите лимит загрузки PHP до значения client_max_body_size:

sed -i 's/^upload_max_filesize.*/upload_max_filesize = 64M/; s/^post_max_size.*/post_max_size = 64M/' /etc/php/8.3/fpm/php.ini
systemctl restart php8.3-fpm

5. Бесплатный HTTPS

apt install -y certbot python3-certbot-nginx
certbot --nginx -d example.com -d www.example.com

Certbot поправит конфиг Nginx под HTTPS и настроит автоматическое продление.

6. Завершите в браузере

Откройте https://example.com, введите имя базы (wordpress), пользователя (wp) и пароль из шага 2 и создайте аккаунт администратора. Выберите имя админа, отличное от «admin».

Чтобы было быстро и безопасно

Связанное

Частые вопросы

Какой тариф нужен для WordPress?

Обычный сайт хорошо работает на Micro-IP (2 ГБ RAM, $10/мес). Nano-IP (1 ГБ) подойдёт для небольшого сайта, если добавить своп-файл. Нужен тариф с выделенным IP: посетители подключаются к портам 80 и 443, а NAT-тарифы не принимают входящий веб-трафик.

Nginx или Apache для WordPress?

Подойдут оба. Nginx с PHP-FPM под нагрузкой тратит меньше памяти, что важно на маленьких серверах. Теряете вы только .htaccess — правила Nginx пишутся в блок server, а для стандартных постоянных ссылок WordPress это одна строка.

Как получить HTTPS?

Направьте A-запись домена на сервер и запустите certbot с плагином для Nginx. Он получит бесплатный сертификат Let's Encrypt, поправит конфиг и будет сам продлевать его каждые несколько месяцев.

Как делать бэкапы WordPress?

Нужны две вещи: база данных (mysqldump) и папка wp-content. Managed Backups ежедневно копируют весь сервер, а плагин или cron-задача с mysqldump дадут копии файлов, которые можно унести куда угодно.

Безопасен ли свой WordPress?

Настолько, насколько вы его поддерживаете. Включите автообновления ядра WordPress и проверенных плагинов, удалите неиспользуемые плагины, используйте сложные пароли админа и держите сам сервер в актуальном состоянии через unattended-upgrades.

Комментарии

Пока нет комментариев. Будьте первым.

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

Комментарии проходят модерацию перед публикацией.