Гид по технологиям

Клонирование WordPress на поддомен для безопасного тестирования

7 min read WordPress Обновлено 30 Dec 2025
Клонирование WordPress на поддомен
Клонирование WordPress на поддомен

Человек за компьютером, работающий над сайтом

Копирование живого сайта WordPress на поддомен — простой и безопасный способ протестировать обновления, плагины и дизайн без риска вывести продакшн из строя. Ниже — подробная последовательность действий, рекомендации по проверкам и несколько альтернативных подходов, чтобы вы могли выбрать метод, который подходит вашей команде.

Зачем нужен поддомен для тестирования

Поддомен — это отдельный адрес вида test.example.com, который размещается рядом с основным сайтом, но логически отделён от него. Преимущества:

  • Изоляция: любые ошибки не влияют на основной сайт.
  • Удобство доступа: команда и заказчики могут проверять изменения онлайн.
  • Экономия ресурсов: обычно не нужно покупать новый хостинг.

Важно: не оставляйте тестовый сайт открытым для поисковых систем. Закройте индексацию и доступ через базовую авторизацию или пароль.

Шаг 1: Создание поддомена

  1. Войдите в панель хостинга (например, cPanel).
  2. Перейдите в раздел Domains -> Subdomains.
  3. Введите имя поддомена (например, staging или test) и нажмите Create.

Примечание: Многие хостинги позволяют создавать неограниченное число поддоменов. Для корпоративных сайтов согласуйте имя с командой и системой деплоя.

Шаг 2: Копирование файлов сайта

Есть два основных способа получить файлы сайта:

  • Через FTP/SFTP (рекомендуется для больших сайтов).
  • Через файловый менеджер в панели управления (быстро и удобно).

Рекомендуемый FTP-клиент — FileZilla (бесплатный, простой). Подключитесь с данными, предоставленными хостером (host, username, password, port). В левой панели — локальные файлы, в правой — файлы сайта. Скачайте содержимое public_html (или корня сайта) в локальную папку.

Скриншот установки FileZilla

Через cPanel: Files -> File Manager -> public_html. В настройках включите “Show hidden files”.

Скриншот настроек cPanel для отображения скрытых файлов

Выделите все файлы, кроме cgi-bin, нажмите Copy и укажите путь в папке поддомена (обычно publichtml/имяподдомена). Это создаст зеркальную копию файлов на сервере.

Совет: если сайт большой, используйте архивирование на сервере (создайте zip в File Manager), скачайте архив и распакуйте в папке поддомена — так процесс быстрее и менее чувствителен к прерываниям.

Шаг 3: Экспорт и импорт базы данных

База данных хранит содержимое, настройки и связи внутри WordPress. Процесс клонирования базы:

  1. В cPanel перейдите в Databases -> MySQL Databases.

  2. Создайте новую базу и нового пользователя с паролем. Назначьте пользователя базе с правами ALL PRIVILEGES.

  3. Откройте phpMyAdmin -> выберите старую базу -> Export -> Quick -> SQL. Скачайте файл .sql.

  4. В phpMyAdmin выберите новую базу -> Import -> загрузите .sql файл и запустите импорт.

Экспорт базы данных через phpMyAdmin

Если экспорт выдает ошибки по объему, используйте архивирование SQL (gzip) или экспортуйте по таблицам.

Шаг 4: Изменение настроек в wp-config.php

В корне файлов сайта найдите wp-config.php и обновите данные подключения к новой базе:

define('DB_NAME', 'new_database_name');
define('DB_USER', 'new_db_user');
define('DB_PASSWORD', 'new_password');
define('DB_HOST', 'localhost');

Фрагмент wp-config.php с именем базы данных

Сохраните файл и убедитесь, что сайт под поддоменом загружается — возможно, появится ошибка базы данных до выполнения следующего шага.

Шаг 5: Обновление URL в базе данных

WordPress хранит абсолютные URL в базе (например, в таблицах wp_options, wp_posts, wp_postmeta). Неправильные ссылки приведут к загрузке ресурсов с продакшн-сайта или к неработающим ссылкам.

Рекомендации:

  • Используйте плагин WP Migrate DB (бесплатная версия для поиска и замены URL). Или Duplicator/All-in-One WP Migration для полного клонирования.
  • В WP Migrate DB: Tools -> Migrate DB -> Custom Find & Replace. В поле Find введите //oldsite.com, в Replace — //staging.example.com, затем выполните экспорт и импорт.

Интерфейс Migrate DB

Выбор Custom Find & Replace в Migrate DB

Альтернатива для продвинутых: выполнить search-replace через WP-CLI:

wp search-replace 'https://example.com' 'https://staging.example.com' --skip-columns=guid

Важно: делайте резервную копию базы перед массовой заменой.

Две альтернативы ручному способу

Вариант 1: Встроенный staging от хостинга

Если хостинг поддерживает staging (Softaculous/Installatron или собственный менеджер), процесс сводится к нескольким кликам:

  1. Создайте поддомен.
  2. В разделе WordPress Manager by Softaculous выберите сайт -> Staging.
  3. Укажите поддомен и запустите процесс.

Преимущества: автоматизация, минимальный риск ошибок, часто встроенная синхронизация обратно в продакшн.

Вариант 2: Плагины для клонирования

Популярные плагины: Duplicator, All-in-One WP Migration, WP Staging. Они позволяют:

  • Создать пакет сайта (файлы + база).
  • Развернуть пакет на поддомене.

Минусы: некоторые функции доступны только в премиум-версиях; большие сайты могут требовать платного хостинга или командной работы.

Проверки и тесты после клонирования

Критерии приёмки:

  • Сайт на поддомене загружается без ошибок.
  • Внешние запросы (оплата, почта) либо отключены, либо перенаправлены на тестовый режим.
  • Изображения и медиа отображаются корректно.
  • Линки внутри сайта ведут на поддомен, а не на продакшн.
  • Поисковые системы запрещены (robots.txt и meta robots noindex).

Тестовые сценарии:

  1. Открыть главную страницу — проверить 200 OK.
  2. Зайти в пару записей/страниц — проверить отображение изображений.
  3. Выполнить поиск по сайту — убедиться в корректных результатах.
  4. Протестировать форму обратной связи — убедиться, что письма идут в тестовый ящик.
  5. Тестировать обновления плагинов и темы на поддомене.

Ролевые чек-листы

Разработчик:

  • Проверил работу основных функций (CRUD для постов).
  • Провёл поиск и замену URL.
  • Убедился в работоспособности кеша и правил .htaccess.

Системный администратор:

  • Создал поддомен и права доступа.
  • Настроил базовую авторизацию (HTTP auth) для защиты.
  • Проверил права на файлы и безопасность.

Контент-менеджер:

  • Проверил отображение медиа и форматирование.
  • Убедился, что виджеты и меню работают корректно.

Мини-методология клонирования (шаги для SOP)

  1. Создать поддомен и директорию.
  2. Создать новую базу данных и пользователя.
  3. Сделать полную резервную копию продакшна (файлы + база).
  4. Скопировать файлы на поддомен (через FTP или File Manager).
  5. Экспортировать и импортировать базу через phpMyAdmin или WP-CLI.
  6. Обновить wp-config.php.
  7. Выполнить поиск и замену URL.
  8. Закрыть доступ для поисковых систем.
  9. Пройти чек-лист тестирования.
  10. Документировать изменения в issue-tracker.

Сравнение подходов

МетодСложностьСкоростьКонтрольПодходит для
Ручной (FTP + phpMyAdmin)СредняяСредняяВысокийМалые и средние сайты, полный контроль
Хостинг stagingНизкаяБыстраяОграниченныйБыстрая проверка, хостинг поддерживает
Плагин (Duplicator)НизкаяСредняяСреднийПользователи без доступа к хостингу
WP-CLIВысокаяБыстраяВысокийАдминистраторы серверов, автоматизация

Меры безопасности и конфиденциальности

  • Отключите индексацию: в админке WordPress Settings -> Reading -> Discourage search engines.
  • Добавьте HTTP Basic Auth на поддомен или защитите через VPN для команды.
  • Отключите платежные шлюзы или переключите в тестовый режим.
  • Если вы работаете с персональными данными, убедитесь в соответствии GDPR/локальным законам: используйте обезличивание данных или работайте с копией, где личная информация заменена тестовыми значениями.

Критерии приёмки

  • Все ссылки и ресурсы указывают на поддомен.
  • Нет видимых ошибок в PHP/JS консоли.
  • Основные бизнес-процессы (публикация, регистрация, поиск) работают.
  • Тестовая среда защищена от публичного доступа.

Частые проблемы и как их решать

  1. Белый экран или ошибка соединения с базой — проверьте wp-config.php и креды базы.
  2. Ссылки ведут на продакшн — выполните поиск и замену URL или используйте WP-CLI.
  3. Большой размер базы — экспортируйте частями или используйте компрессию.
  4. Плагин кэширования мешает — очистите кэш и временно отключите плагин.

Шаблон задач для тикета при клонировании

Название: Клонирование сайта на staging.example.com

Описание:

  • Создать поддомен staging.example.com
  • Скопировать файлы в public_html/staging
  • Создать базу staging_db и пользователя staging_user
  • Экспорт/import базы, заменить URL
  • Обновить wp-config.php
  • Защитить поддомен HTTP auth
  • Провести тесты по чек-листу

Короткое объявление для команды (100–200 слов)

Мы создаём staging-сайт для безопасного тестирования обновлений и плагинов. Поддомен staging.example.com будет зеркалом текущего сайта: файлы и база данных будут скопированы, а URL заменены. Сайт будет защищён базовой авторизацией и закрыт для индексации. Пожалуйста, используйте staging для установки и тестирования любых изменений перед публикацией на продакшене. После завершения работ мы синхронизируем изменения и задокументируем релиз.

1‑строчный глоссарий

  • Поддомен — отдельный адрес вида sub.example.com, изолированный от основного домена.
  • FTP/SFTP — протоколы для передачи файлов между локальной машиной и сервером.
  • phpMyAdmin — веб-интерфейс для управления MySQL базами.
  • WP-CLI — интерфейс командной строки для управления WordPress.

Итог и рекомендации

Создание копии сайта на поддомене — обязательная практика при внесении изменений в WordPress. Выберите метод в зависимости от размера сайта и уровня доступа: ручной для полного контроля, staging от хостинга для скорости, плагины для удобства. Всегда делайте резервные копии перед любыми операциями и защищайте тестовый сайт от посторонних.

Важно: документируйте все шаги и храните доступы в менеджере паролей. Это упростит повторяемость и уменьшит риск ошибок при следующих клонированиях.

Фрагмент интерфейса для экспорта базы данных

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Как создать и использовать аватар в Instagram
Социальные сети

Как создать и использовать аватар в Instagram

Developer-бета iOS 17, iPadOS 17, watchOS 10, macOS
Руководство

Developer-бета iOS 17, iPadOS 17, watchOS 10, macOS

Взлом Wi‑Fi: методы и защита
Кибербезопасность

Взлом Wi‑Fi: методы и защита

Суммирование в Google Sheets — числа, ячейки, матрицы
Google Таблицы

Суммирование в Google Sheets — числа, ячейки, матрицы

Разблокировка iPhone с Apple Watch
Гаджеты

Разблокировка iPhone с Apple Watch

Импорт и экспорт данных в Excel
Excel

Импорт и экспорт данных в Excel