WordPress — одна из самых популярных платформ для создания сайтов. Она открыта, гибка и идеально подходит как для новичков, так и для опытных веб-разработчиков. В этом гайде мы пошагово разберём, как развернуть WordPress на сервере с Apache2. Статья будет разделена на четыре части, чтобы детально осветить каждый этап:

  • Подготовка окружения.
  • Установка Apache, MySQL и PHP (LAMP-стека).
  • Настройка базы данных и установка WordPress.
  • Финальная настройка безопасности и оптимизация.

Часть 1: Подготовка окружения

Обновление системы

Сначала обновим все пакеты до последних версий. Это залог стабильности и безопасности вашего будущего сайта. Подключитесь к вашему серверу через SSH (например, используя терминал или PuTTY для Windows).

sudo apt update
sudo apt upgrade -y

Эти команды обновят список пакетов и установят последние версии программ. Дождитесь завершения обновления, это может занять некоторое время.

Установка необходимых компонентов

Для работы WordPress нам понадобятся Apache2, MySQL (или другая СУБД) и PHP. Но обо всём по порядку.

Проверка установки Apache

В большинстве дистрибутивов Apache может быть предустановлен. Проверим его наличие:

apache2 -v

Если Apache отсутствует, установите его:

sudo apt install apache2 -y

После установки убедимся, что Apache запущен и работает:

sudo systemctl status apache2

Если всё в порядке, увидите статус active (running).

Настройка брандмауэра (UFW)

WordPress работает на портах 80 (HTTP) и 443 (HTTPS). Открываем их для доступа:

sudo ufw allow in "Apache Full"

Теперь активируем UFW:

sudo ufw enable

Установка MySQL

WordPress требует базу данных для хранения контента. MySQL — надёжный и широко используемый вариант.

Устанавливаем MySQL сервер:

sudo apt install mysql-server -y

После установки проверим статус:

sudo systemctl status mysql

Настройка MySQL безопасности

MySQL имеет встроенный скрипт для улучшения безопасности:

sudo mysql_secure_installation

Этот скрипт поможет установить пароль для root-пользователя MySQL, удалить тестовые базы и отключить анонимных пользователей. Следуйте инструкциям на экране.

На этом подготовка окружения завершена. В следующей части мы установим PHP и завершим настройку LAMP-стека.

Часть 2: Установка Apache, MySQL и PHP (LAMP-стека)

В первой части мы подготовили окружение, установили Apache и MySQL, и настроили брандмауэр. Теперь перейдём к установке PHP и завершим настройку LAMP-стека — основного набора программ для работы WordPress.

Установка PHP

WordPress написан на PHP, поэтому нам нужно установить последнюю стабильную версию. В Ubuntu это можно сделать командой:

sudo apt install php libapache2-mod-php php-mysql -y

Дополнительно установим некоторые расширения, которые понадобятся WordPress:

sudo apt install php-curl php-gd php-mbstring php-xml php-xmlrpc php-soap php-intl php-zip -y

После установки проверим версию PHP:

php -v

Вы должны увидеть что-то вроде PHP 8.1.2 (версия зависит от вашего дистрибутива).

Настройка PHP

Теперь немного подправим конфигурацию PHP для лучшей производительности WordPress. Откройте файл php.ini:

sudo nano /etc/php/*/apache2/php.ini

(Звёздочка указывает на версию PHP, например, php/8.1/apache2/php.ini.)

Отредактируйте следующие параметры (можете найти их с помощью Ctrl + W):

memory_limit = 256M
upload_max_filesize = 64M
post_max_size = 64M
max_execution_time = 300

Эти настройки улучшат производительность и позволят загружать на сайт более крупные файлы.

Сохраняем изменения (Ctrl + O, затем Ctrl + X) и перезапускаем Apache:

sudo systemctl restart apache2

Проверка работы LAMP-стека

Чтобы убедиться, что всё работает правильно, создадим простой тестовый файл PHP.

sudo nano /var/www/html/info.php

Добавьте следующий код:

<?php
phpinfo();
?>

Сохраните файл и откройте в браузере:

http://ваш_сервер/info.php

Вы должны увидеть страницу с подробной информацией о PHP. Если всё в порядке, не забудьте удалить этот файл из соображений безопасности:

sudo rm /var/www/html/info.php

Создание базы данных для WordPress

Теперь настроим базу данных MySQL для WordPress. Запустите клиент MySQL:

sudo mysql -u root -p

Введите пароль, который вы установили ранее, и создайте новую базу данных:

CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

Создайте нового пользователя и задайте ему пароль:

CREATE USER 'wp_user'@'localhost' IDENTIFIED BY 'your_strong_password';

Дайте пользователю права на созданную базу данных:

GRANT ALL PRIVILEGES ON wordpress.* TO 'wp_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Важно: Запомните имя базы данных (wordpress), пользователя (wp_user) и пароль — они понадобятся при установке WordPress.

На этом установка LAMP-стека завершена. В следующей части займёмся загрузкой и настройкой самого WordPress!

Часть 3: Установка и настройка WordPress

Мы успешно установили и настроили Apache, MySQL и PHP. Теперь пришло время установить WordPress и привязать его к нашей базе данных.

Скачивание WordPress

Перейдём в директорию /var/www/html, где обычно располагаются файлы веб-сайтов на сервере Apache:

cd /var/www/html

Удалим стандартный файл index.html, чтобы он не мешал:

sudo rm index.html

Теперь скачиваем последнюю версию WordPress:

sudo wget https://wordpress.org/latest.tar.gz

Распаковываем архив:

sudo tar -xvzf latest.tar.gz

Перемещаем файлы из распакованной папки в корневую директорию:

sudo mv wordpress/* .

Удаляем остатки архива и пустую папку:

sudo rm -rf wordpress latest.tar.gz

Настройка прав доступа

WordPress требует, чтобы веб-сервер имел доступ к файлам. Устанавливаем необходимые права:

sudo chown -R www-data:www-data /var/www/html/
sudo chmod -R 755 /var/www/html/

Настройка файла wp-config.php

WordPress использует файл wp-config.php для подключения к базе данных. Создадим его из шаблона:

sudo cp wp-config-sample.php wp-config.php

Откройте файл для редактирования:

sudo nano wp-config.php

Найдите следующие строки и укажите параметры вашей базы данных:

define('DB_NAME', 'wordpress');        // Имя базы данных
define('DB_USER', 'wp_user');          // Имя пользователя
define('DB_PASSWORD', 'your_strong_password'); // Пароль пользователя
define('DB_HOST', 'localhost');        // Обычно localhost

Сохраняем изменения и закрываем файл (Ctrl + O, затем Ctrl + X).

Завершение установки через веб-интерфейс

Теперь перейдите в браузере по адресу вашего сервера:

http://ваш_домен_или_IP

Вы увидите экран приветствия WordPress. Следуйте инструкциям:

  • Выбор языка: Установите нужный язык интерфейса.
  • Основные параметры сайта: Укажите название сайта, логин и пароль администратора.
  • Установка: Нажмите кнопку для завершения установки.

После установки вы сможете войти в панель администратора по адресу:

http://ваш_домен_или_IP/wp-admin

Установка и настройка плагинов

На этом этапе WordPress уже полностью готов к работе. Но для улучшения безопасности и функциональности стоит установить несколько плагинов:

  • Akismet — защита от спама.
  • Yoast SEO — для оптимизации сайта.
  • UpdraftPlus — резервное копирование.
  • Wordfence — защита от взломов.

Установка плагинов доступна через меню «Плагины» в админке WordPress.

В следующей части займёмся финальной настройкой безопасности и оптимизацией производительности сайта!

Часть 4: Финальная настройка безопасности и оптимизация

Теперь, когда WordPress установлен и работает, пришло время позаботиться о безопасности и производительности вашего сайта. Эти шаги помогут защитить сайт от взломов и ускорить его работу.

Шаг 15: Настройка базовой безопасности WordPress

Отключите редактор файлов в админке

Редактор тем и плагинов внутри админки может стать уязвимостью, если злоумышленник получит доступ. Отключим его:

Откройте файл wp-config.php:

sudo nano /var/www/html/wp-config.php

Добавьте в конец файла:

define('DISALLOW_FILE_EDIT', true);

Измените префикс таблиц базы данных

По умолчанию WordPress использует префикс wp_ для таблиц. Лучше изменить его на что-то уникальное во время установки или через плагины, чтобы усложнить работу злоумышленникам.

Настройка прав доступа к файлам и папкам

Убедитесь, что у файлов и папок установлены правильные права доступа. Для этого выполните команды:

sudo find /var/www/html/ -type d -exec chmod 755 {} \;
sudo find /var/www/html/ -type f -exec chmod 644 {} \;

755 для папок — владелец может читать, записывать и выполнять файлы, остальные — только читать и выполнять.
644 для файлов — владелец может читать и записывать файлы, остальные — только читать.

Включение HTTPS с помощью SSL

Для защиты данных пользователей настройте SSL-сертификат. Если у вас нет сертификата, можно использовать бесплатный Let’s Encrypt.

Установка Certbot:

sudo apt install certbot python3-certbot-apache -y

Получение сертификата:

sudo certbot --apache

Следуйте инструкциям на экране, выберите домен и укажите email для уведомлений. После установки перезапустите Apache:

sudo systemctl restart apache2

Теперь ваш сайт доступен по HTTPS!

Оптимизация производительности

  1. Включите кэширование: Установите и активируйте плагин, например, WP Super Cache или W3 Total Cache. Они значительно ускоряют загрузку страниц.
  2. Оптимизируйте изображения: Используйте плагины вроде Smush или ShortPixel для автоматической оптимизации изображений.
  3. Отключите неиспользуемые плагины и темы: Удалите всё лишнее — это снизит нагрузку на сервер и уменьшит потенциальные уязвимости.

Регулярные обновления

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

 

Комментарии

0

Без регистрации и смс