Установка и настройка WordPress 4.0 на CentOS 7.0
Введение
Этот документ описывает процесс установки и настройки WordPress 4.0 на CentOS 7.0. WordPress существует с 2003 года и служит одной из самых распространённых CMS для самостоятельного хостинга. В этом руководстве шаг за шагом показано, как подготовить сервер, создать базу данных, развернуть файлы WordPress, настроить права доступа и включить «красивые» постоянные ссылки (pretty permalinks).
Кому это полезно: системным администраторам, инженерам DevOps, веб-разработчикам и пользователям, которые настраивают собственный блог или сайт на CentOS 7.0.
Важно: перед началом убедитесь, что у вас есть базовая установка CentOS 7.0 с фиксированным IP и установленный LAMP (Apache, MariaDB/MySQL, PHP). В примерах используется IP 192.168.0.100 и hostname server1.example.com.
Содержание
- Предварительная проверка
- Инициализация базы данных
- Установка WordPress
- Настройка прав и загрузок
- Настройка Apache и .htaccess для постоянных ссылок
- Настройка постоянных ссылок в панели WP
- Тестирование и вход в систему
- Рекомендации по безопасности
- Альтернативы и расширения
- Контрольные списки и критерии приёмки
- Краткое резюме
1 Предварительная проверка
Перед началом:
- Установлен CentOS 7.0 с статическим IP.
- Установлен LAMP (httpd, mariadb/mysql, php). Минимально требуемые PHP-модули: php, php-mysql, php-gd (если планируете загрузку изображений), php-xml, php-mbstring.
- Вы подключены как root или пользователь с sudo-привилегиями.
Примечание: в руководстве используется MariaDB, но все команды совместимы с MySQL.
2 Инициализация базы данных
Создайте базу данных и пользователя для WordPress.
mysql -u root -pВ интерактивной консоли MySQL выполните:
CREATE DATABASE wordpressdb;
CREATE USER wordpressuser@localhost IDENTIFIED BY 'wordpresspassword';
GRANT ALL PRIVILEGES ON wordpressdb.* TO wordpressuser@localhost;
FLUSH PRIVILEGES;
exitЗамените wordpressdb, wordpressuser и wordpresspassword на ваши значения. После этого перезапустите службы:
service httpd restart
service mariadb restartЕсли на сервере включён firewalld, откройте HTTP/HTTPS:
firewall-cmd --permanent --zone=public --add-service=http
firewall-cmd --permanent --zone=public --add-service=https
firewall-cmd --reloadВажно: в продакшене используйте сложные уникальные пароли и, при возможности, ограничьте доступ к базе данных по IP.
3 Установка WordPress 4.0
Создайте временную папку и установите необходимые инструменты:
mkdir temp
cd temp
yum install wget unzip net-toolsСкачайте архив WordPress:
wget http://wordpress.org/latest.zipЕсли планируете работать с изображениями и устанавливать плагины через интерфейс, установите php-gd:
yum install php-gd
service httpd restartРаспакуйте WordPress в корневую папку веб-сервера:
unzip -q latest.zip -d /var/www/html/Проставьте владельца и права:
chown -R apache:apache /var/www/html/wordpress
chmod -R 755 /var/www/html/wordpressСоздайте каталог для загружаемых файлов и разрешите веб-серверу запись:
mkdir -p /var/www/html/wordpress/wp-content/uploads
chown -R :apache /var/www/html/wordpress/wp-content/uploadsДалее скопируйте образец конфигурации и отредактируйте его:
cd /var/www/html/wordpress/
cp wp-config-sample.php wp-config.php
vi wp-config.phpВ файле wp-config.php укажите созданную базу данных и учётные данные:
define('DB_NAME', 'wordpressdb');
define('DB_USER', 'wordpressuser');
define('DB_PASSWORD', 'wordpresspassword');Не забудьте заменить значения на свои.
4 Веб-инсталляция и первые шаги
Откройте в браузере:
http://192.168.0.100/wordpress/wp-admin/install.php
Выберите язык и нажмите “Продолжить”.
![/files/e1adb401-dbb3-4801-a4c1-1aabffe9c2f5.png]
Далее следуйте мастеру установки.
![/files/94b3a7d8-1ba1-4d85-b369-9d25a618f374.png]
Пример заполнения (введите свои значения):
Site Title = Wordpress-testsite
Admin Email = [email protected]
Username = admin
Admin password = howtoforgeНажмите Install WordPress.
![/files/f7eb3754-79ae-4b94-b52a-fd672360eb01.png]
После завершения — войдите в административную панель:
![/files/3ca8757a-b8ec-414b-ac96-0b67bf0fc7cb.png]
Введите ваш логин и пароль:
![/files/377933da-b2ed-4f89-99b3-f77033e1d33a.png]
После входа увидите панель управления и версию WordPress в правом нижнем углу.
![/files/56ad378b-d462-4207-ad32-2573e8d7a1bb.png]
5 Настройка «красивых» постоянных ссылок
По умолчанию WordPress использует URL вида http://server/?p=1. Для удобства и SEO рекомендуется включить человекочитаемые ссылки.
5.1 Активировать модуль перезаписи в Apache
Отредактируйте конфигурацию Apache, чтобы разрешить переопределения через .htaccess в корне сайта:
vi /etc/httpd/conf/httpd.confНайдите секцию для /var/www/html и измените AllowOverride None на AllowOverride All:
Options Indexes FollowSymLinks
AllowOverride All
Перезапустите Apache:
service httpd restart5.2 Создать .htaccess
Создайте пустой файл .htaccess и назначьте владельца:
touch /var/www/html/wordpress/.htaccess
chown apache /var/www/html/wordpress/.htaccessЕсли WordPress должен автоматически записывать правила перезаписи, дайте файлу права записи группы:
chmod 664 /var/www/html/wordpress/.htaccessДля повышенной безопасности можно оставить права 644 и вставлять правила вручную.
5.3 Установить постоянные ссылки в панели
В админке откройте Settings → Permalinks и выберите формат, затем “Save Changes”.
![/files/a9e42780-6e77-4dae-8212-e791d2aac376.png]
Если серверу разрешено записывать .htaccess, WP автоматически обновит файл и вы увидите подтверждение.
![/files/9be3341a-7b57-4b00-8b3e-e494c2a894d8.png]
Если запись не возможна, WordPress покажет набор правил, которые нужно вручную вставить в .htaccess.
![/files/88011b9c-a241-4cd7-91be-471610718c6a.png]
Скопируйте сгенерированные строки и вставьте в /var/www/html/wordpress/.htaccess:
vi /var/www/html/wordpress/.htaccessПосле этого пермалинк будет работать как ожидается.
6 Тестирование и базовая отладка
Проверьте, что:
- Главная страница сайта доступна по http://192.168.0.100/wordpress
- Админ-панель доступна и авторизация проходит
- Загрузка изображений работает (проверьте wp-content/uploads)
- Постоянные ссылки открываются без ошибок 404
Если вы видите 404 при открытии постов — проверьте AllowOverride All и содержимое .htaccess.
Если возникают ошибки PHP — проверьте логи: /var/log/httpd/error_log и включите отображение ошибок в PHP для отладки (в продакшене отключите отображение ошибок в браузере).
7 Рекомендации по безопасности (основные меры)
- Обновите WordPress, темы и плагины до последних версий (в продакшене тестируйте обновления на стенде).
- Используйте сложные пароли для админа и базы данных.
- Ограничьте доступ к /wp-admin по IP, если возможно.
- Установите fail2ban для защиты от брутфорс-атак на wp-login.php.
- Делайте регулярные бэкапы файлов и базы данных.
- Измените префикс таблиц WP (по желанию) в wp-config для затруднения атак.
- Ограничьте права файлов: большинство файлов 644, папки 755, wp-config.php 600/640 при необходимости.
Пример команды для повышения безопасности wp-config.php:
chmod 640 /var/www/html/wordpress/wp-config.php
chown root:apache /var/www/html/wordpress/wp-config.php8 Альтернативные подходы и расширения
- Nginx + PHP-FPM вместо Apache: лучше по производительности при высокой нагрузке; потребуется вручную настроить правила перезаписи и fastcgi_param PATH_INFO.
- Использовать Docker-контейнеры для изоляции (официальный образ WordPress + отдельный контейнер для базы данных).
- Управляемые WordPress-хостинги (если не хотите заниматься администрированием).
Когда этот процесс не подходит:
- Вы используете более новую версию CentOS или RHEL — команды и пакеты могут отличаться.
- Требуется PHP 7+ — CentOS 7 по умолчанию поставляет старые версии PHP; используйте SCL/Remi-репозиторий.
9 Контрольные списки (роль-based)
Администратор сервера:
- Установлен и настроен LAMP
- Открыты порты HTTP/HTTPS
- Настроены бэкапы
- Проверены права и владельцы файлов
Разработчик/владелец сайта:
- Проверена функциональность плагинов и тем
- Настроены пермалинкты
- Выполнено тестирование загрузки мультимедиа
Оператор безопасности:
- Включены обновления или процесс обновления
- Применены правила для wp-admin
- Внедрён мониторинг логов и fail2ban
10 Критерии приёмки
Минимальные критерии для «рабочего» статуса:
- Сайт доступен по HTTP(S)
- Вход в /wp-admin работает
- Загрузка изображений сохраняется в wp-content/uploads
- Посты открываются по выбранному формату постоянных ссылок
- База данных подключена и отвечает на запросы
11 Быстрый набор команд (cheat sheet)
- Установка инструментов: yum install wget unzip net-tools
- Запуск MySQL: mysql -u root -p
- Перезапуск Apache: service httpd restart
- Открыть firewall: firewall-cmd –permanent –add-service=http
- Изменить права: chown -R apache:apache /var/www/html/wordpress
12 Неполадки и как их решать
Симптом: Белая страница или ошибка 500
- Проверьте /var/log/httpd/error_log и /var/log/php-fpm/error.log.
- Временно включите display_errors в php.ini для локальной отладки.
Симптом: 404 на отдельных записях
- Проверьте AllowOverride All и содержимое .htaccess.
- Убедитесь, что модуль mod_rewrite загружен.
Симптом: Права на файлы не позволяют загружать изображения
- Проверьте принадлежность каталогов и права: chown :apache wp-content/uploads && chmod 775 wp-content/uploads
13 Короткая методология развертывания (пошагово)
- Подготовить сервер и LAMP.
- Создать базу данных и пользователя.
- Скопировать файлы WordPress в /var/www/html/wordpress.
- Настроить wp-config.php.
- Установить права владельца и каталоги загрузок.
- Выполнить веб-инсталляцию через /wp-admin/install.php.
- Настроить пермалинкты и .htaccess.
- Применить базовые меры безопасности и бэкапы.
14 Однострочный глоссарий
- LAMP: стек Linux, Apache, MySQL/MariaDB, PHP.
- .htaccess: файл конфигурации Apache для переопределений в каталоге.
- mod_rewrite: модуль Apache для перезаписи URL.
15 Резюме
Вы установили рабочий сайт на WordPress 4.0 на CentOS 7.0: создали базу данных, развернули файлы, настроили права, провели веб-инсталляцию и активировали «красивые» ссылки через .htaccess. Рекомендуется внести дополнительные меры безопасности, настроить регулярные бэкапы и по возможности автоматизировать обновления на тестовой среде перед применением в продакшене.
Важно: своевременно проверяйте совместимость PHP и плагинов для старой версии WordPress 4.0 — в долгосрочной перспективе планируйте миграцию на поддерживаемую версию.
Ссылки
- Wordpress : http://wordpress.org/
- CentOS : http://www.centos.org/
Похожие материалы
Несколько аккаунтов Skype: Multi Skype Launcher
Журнал для работы: повысить продуктивность
Персональные звуки уведомлений на Android
Скачивание шоу Hulu для офлайн‑просмотра
Microsoft Start: персонализированная новостная лента