Установка и настройка WordPress — различия между версиями

Материал из ARK-HOSTER.RU | Документация хостинга
Перейти к: навигация, поиск
(Новая страница: «= Установка и настройка WordPress = == 1. Подготовка системы == * Войдите в систему под учетной з…»)
(нет различий)

Версия 08:36, 15 октября 2025

Содержание

Установка и настройка WordPress

1. Подготовка системы

  • Войдите в систему под учетной записью с правами root или пользователя с правами sudo.
  • Убедитесь, что у вас есть доступ к серверу через SSH или консоль.

2. Установка LAMP стека =

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

1. Обновите систему: sudo apt update

2. Установите необходимые пакеты: sudo apt install -y wget curl unzip

Установка Apache

1. Установите Apache: sudo apt install -y apache2

2. Запустите и включите автозапуск: sudo systemctl start apache2 sudo systemctl enable apache2

3. Проверьте статус: sudo systemctl status apache2

4. Включите необходимые модули: sudo a2enmod rewrite sudo a2enmod ssl sudo a2enmod headers

Установка MySQL

1. Установите MySQL: sudo apt install -y mysql-server

2. Запустите и включите автозапуск: sudo systemctl start mysql sudo systemctl enable mysql

3. Настройте безопасность MySQL: sudo mysql_secure_installation

4. Создайте базу данных для WordPress: sudo mysql -u root -p

5. В MySQL выполните: CREATE DATABASE wordpress CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; CREATE USER 'wordpress'@'localhost' IDENTIFIED BY 'your_password'; GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpress'@'localhost'; FLUSH PRIVILEGES; EXIT;

Установка PHP

1. Установите PHP и необходимые модули: sudo apt install -y php php-mysql php-curl php-gd php-mbstring php-xml php-zip php-intl php-soap

2. Проверьте версию PHP: php --version

3. Настройте PHP: sudo nano /etc/php/8.1/apache2/php.ini

4. Измените основные параметры: upload_max_filesize = 64M post_max_size = 64M max_execution_time = 300 memory_limit = 256M date.timezone = Europe/Moscow

5. Перезапустите Apache: sudo systemctl restart apache2

3. Установка WordPress =

Скачивание WordPress

1. Перейдите в директорию веб-сервера: cd /var/www/html

2. Скачайте последнюю версию WordPress: sudo wget https://wordpress.org/latest.tar.gz

3. Распакуйте архив: sudo tar -xzf latest.tar.gz

4. Переместите файлы: sudo mv wordpress/* . sudo rmdir wordpress

5. Удалите архив: sudo rm latest.tar.gz

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

1. Установите владельца файлов: sudo chown -R www-data:www-data /var/www/html

2. Установите права доступа: sudo find /var/www/html -type d -exec chmod 755 {} \; sudo find /var/www/html -type f -exec chmod 644 {} \;

3. Создайте директорию для загрузок: sudo mkdir -p /var/www/html/wp-content/uploads sudo chown -R www-data:www-data /var/www/html/wp-content/uploads

Создание конфигурационного файла

1. Скопируйте пример конфигурации: sudo cp /var/www/html/wp-config-sample.php /var/www/html/wp-config.php

2. Отредактируйте конфигурацию: sudo nano /var/www/html/wp-config.php

3. Настройте базу данных: define('DB_NAME', 'wordpress'); define('DB_USER', 'wordpress'); define('DB_PASSWORD', 'your_password'); define('DB_HOST', 'localhost');

4. Сгенерируйте ключи безопасности: curl -s https://api.wordpress.org/secret-key/1.1/salt/

5. Замените ключи в wp-config.php

4. Настройка Apache =

Создание виртуального хоста

1. Создайте конфигурацию сайта: sudo nano /etc/apache2/sites-available/wordpress.conf

2. Добавьте конфигурацию: <VirtualHost *:80>

   ServerName your-domain.com
   DocumentRoot /var/www/html
   
   <Directory /var/www/html>
       AllowOverride All
       Require all granted
   </Directory>
   
   ErrorLog ${APACHE_LOG_DIR}/wordpress_error.log
   CustomLog ${APACHE_LOG_DIR}/wordpress_access.log combined

</VirtualHost>

3. Включите сайт: sudo a2ensite wordpress sudo a2dissite 000-default

4. Проверьте конфигурацию: sudo apache2ctl configtest

5. Перезапустите Apache: sudo systemctl restart apache2

5. Настройка SSL =

Установка Certbot

1. Установите Certbot: sudo apt install -y certbot python3-certbot-apache

2. Получите SSL сертификат: sudo certbot --apache -d your-domain.com

3. Настройте автоматическое обновление: sudo crontab -e

4. Добавьте задачу: 0 12 * * * /usr/bin/certbot renew --quiet

Настройка HTTPS редиректа

1. Certbot автоматически настроит редирект, но можно добавить дополнительную настройку: sudo nano /etc/apache2/sites-available/wordpress-le-ssl.conf

2. Добавьте принудительный редирект: RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

6. Настройка WordPress =

Первоначальная настройка

1. Откройте браузер и перейдите по адресу: https://your-domain.com

2. Выберите язык и нажмите "Продолжить"

3. Заполните информацию о сайте:

  • Название сайта
  • Имя пользователя
  • Пароль
  • Email адрес

4. Нажмите "Установить WordPress"

Настройка администратора

1. Войдите в админ-панель: https://your-domain.com/wp-admin

2. Настройте профиль администратора:

  • Перейдите в Пользователи → Ваш профиль
  • Обновите информацию
  • Настройте уведомления

7. Настройка безопасности =

Ограничение доступа к wp-admin

1. Создайте .htaccess файл для защиты: sudo nano /var/www/html/wp-admin/.htaccess

2. Добавьте правила: # Ограничение доступа по IP <RequireAll>

   Require ip 192.168.1.0/24
   Require ip YOUR_IP_ADDRESS

</RequireAll>

Настройка файрвола

1. Настройте UFW: sudo ufw allow 22/tcp sudo ufw allow 80/tcp sudo ufw allow 443/tcp sudo ufw enable

2. Проверьте статус: sudo ufw status

Настройка fail2ban

1. Установите fail2ban: sudo apt install -y fail2ban

2. Создайте конфигурацию для WordPress: sudo nano /etc/fail2ban/jail.d/wordpress.conf

3. Добавьте настройки: [wordpress] enabled = true port = http,https filter = wordpress logpath = /var/log/apache2/wordpress_access.log maxretry = 3 bantime = 3600

4. Запустите fail2ban: sudo systemctl start fail2ban sudo systemctl enable fail2ban

8. Установка плагинов =

Обязательные плагины безопасности

1. Wordfence Security:

  • Перейдите в Плагины → Добавить новый
  • Найдите "Wordfence Security"
  • Установите и активируйте

2. UpdraftPlus:

  • Установите для резервного копирования
  • Настройте автоматические бэкапы

3. Yoast SEO:

  • Установите для SEO оптимизации
  • Настройте мета-теги и sitemap

Плагины производительности

1. WP Rocket:

  • Кэширование страниц
  • Оптимизация изображений
  • Минификация CSS/JS

2. W3 Total Cache:

  • Альтернатива WP Rocket
  • Бесплатное кэширование

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

Настройка кэширования

1. Включите кэширование в Apache: sudo a2enmod expires sudo a2enmod headers

2. Добавьте правила кэширования в .htaccess: # Кэширование статических файлов <IfModule mod_expires.c>

   ExpiresActive On
   ExpiresByType image/jpg "access plus 1 month"
   ExpiresByType image/jpeg "access plus 1 month"
   ExpiresByType image/gif "access plus 1 month"
   ExpiresByType image/png "access plus 1 month"
   ExpiresByType text/css "access plus 1 month"
   ExpiresByType application/pdf "access plus 1 month"
   ExpiresByType text/javascript "access plus 1 month"
   ExpiresByType application/javascript "access plus 1 month"

</IfModule>

Настройка PHP-FPM

1. Установите PHP-FPM: sudo apt install -y php8.1-fpm

2. Настройте Apache для использования PHP-FPM: sudo a2enmod proxy_fcgi setenvif sudo a2enconf php8.1-fpm

3. Перезапустите сервисы: sudo systemctl restart apache2 sudo systemctl restart php8.1-fpm

10. Резервное копирование =

Автоматическое резервное копирование

1. Создайте скрипт резервного копирования: sudo nano /usr/local/bin/wordpress-backup.sh

2. Добавьте содержимое: #!/bin/bash

BACKUP_DIR="/backup/wordpress" DATE=$(date +%Y%m%d_%H%M%S) SITE_DIR="/var/www/html"

  1. Создание директории для бэкапа

mkdir -p $BACKUP_DIR

  1. Резервное копирование файлов

tar -czf $BACKUP_DIR/wordpress-files-$DATE.tar.gz -C $SITE_DIR .

  1. Резервное копирование базы данных

mysqldump -u wordpress -p'your_password' wordpress > $BACKUP_DIR/wordpress-db-$DATE.sql

  1. Сжатие SQL файла

gzip $BACKUP_DIR/wordpress-db-$DATE.sql

  1. Удаление старых бэкапов (старше 7 дней)

find $BACKUP_DIR -name "wordpress-*" -mtime +7 -delete

echo "WordPress backup completed: $DATE"

3. Сделайте скрипт исполняемым: sudo chmod +x /usr/local/bin/wordpress-backup.sh

4. Добавьте в crontab: sudo crontab -e

5. Добавьте задачу: 0 3 * * * /usr/local/bin/wordpress-backup.sh

11. Мониторинг =

Настройка логирования

1. Настройте ротацию логов: sudo nano /etc/logrotate.d/wordpress

2. Добавьте конфигурацию: /var/log/apache2/wordpress_*.log {

   daily
   missingok
   rotate 52
   compress
   delaycompress
   notifempty
   create 644 www-data www-data
   postrotate
       systemctl reload apache2
   endscript

}

Мониторинг производительности

1. Установите htop для мониторинга: sudo apt install -y htop

2. Создайте скрипт мониторинга: sudo nano /usr/local/bin/wordpress-monitor.sh

3. Добавьте содержимое: #!/bin/bash

  1. Проверка статуса Apache

if ! systemctl is-active --quiet apache2; then

   echo "Apache is down!" | mail -s "WordPress Alert" admin@example.com

fi

  1. Проверка использования диска

DISK_USAGE=$(df /var/www/html | tail -1 | awk '{print $5}' | sed 's/%//') if [ $DISK_USAGE -gt 80 ]; then

   echo "Disk usage is high: ${DISK_USAGE}%" | mail -s "WordPress Alert" admin@example.com

fi

  1. Проверка доступности сайта

if ! curl -s -o /dev/null -w "%{http_code}" https://your-domain.com | grep -q "200"; then

   echo "Website is not responding!" | mail -s "WordPress Alert" admin@example.com

fi

12. Устранение неполадок =

Частые проблемы

1. WordPress не загружается:

  • Проверьте права доступа к файлам
  • Проверьте конфигурацию Apache
  • Проверьте логи: sudo tail -f /var/log/apache2/error.log

2. Ошибки базы данных:

  • Проверьте подключение к MySQL
  • Проверьте настройки в wp-config.php
  • Проверьте права пользователя базы данных

3. Проблемы с плагинами:

  • Переименуйте папку плагинов
  • Проверьте совместимость версий
  • Восстановите из резервной копии

Диагностика

1. Проверка статуса сервисов: sudo systemctl status apache2 sudo systemctl status mysql

2. Проверка логов: sudo tail -f /var/log/apache2/error.log sudo tail -f /var/log/mysql/error.log

3. Проверка подключения к базе данных: mysql -u wordpress -p -e "SELECT 1;"

4. Проверка PHP ошибок: sudo tail -f /var/log/apache2/error.log | grep PHP

Заключение

WordPress успешно установлен и настроен! Теперь у вас есть полнофункциональный сайт с возможностями управления контентом, плагинами и темами.

Для размещения ваших WordPress сайтов на надежном хостинге рекомендуем воспользоваться услугами [ARK-HOSTER.RU](https://ark-hoster.ru):

Наши специалисты помогут с настройкой WordPress и оптимизацией производительности ваших сайтов!