Как запустить несколько портативных XAMPP‑серверов на одном диске
Что нужно знать в одну строку
SUBST создаёт виртуальную букву диска, указывающую на папку; XAMPP из ZIP можно развернуть в этой папке и запускать как отдельный «локальный корень». Запускайте одновременно только один инстанс по умолчанию (из‑за конфликтов портов), или настраивайте альтернативные порты.
Почему это полезно
- Переносной набор сайтов на одном носителе: для демонстраций, тестирования и восстановления.
- Быстрое переключение между проектами без установки на хост‑ПК.
- Полная локальная копия WordPress с базой данных и файлами.
1. Подготовка переносного носителя
- Подключите внешний диск или USB‑накопитель (рекомендуется USB 3.0 или SSD для скорости).
- На носителе создайте корневую папку для каждого проекта, например TopSecretWriters, ProjectB и т.д. Пример: H:\TopSecretWriters
Совет: держите структуру простой — одна папка = один сайт/XAMPP.
2. Назначение виртуальной буквы диска через SUBST
Чтобы XAMPP корректно работал как «корневой» веб‑сервер, назначьте вашей папке виртуальную букву диска:
subst X: H:\TopSecretWritersГде X: — выбранная буква (проверьте, чтобы она не конфликтовала с существующими сетевыми или физическими носителями). Эта команда временная и действует до перезагрузки. Чтобы выполнять её автоматически при подключении носителя, см. раздел «Автозапуск и бат‑скрипты».

3. Разворачиваем XAMPP из ZIP
- Скачайте ZIP‑версию XAMPP (не инсталлятор).
- Распакуйте папку
xamppв вашу корневую папку (в примере: X:\xampp).
Перейдите в папку X:\xampp и запустите начальную настройку:
setup_xampp.batПосле этого откройте панель управления:
xampp-control.exeВыберите и установите службы Apache и MySQL (Install → Start). Откройте в браузере http://localhost/ — должна появиться страница приветствия XAMPP.

4. Локальная полная копия WordPress (файлы + база)
Шаги для зеркала WordPress‑сайта:
- В phpMyAdmin (http://localhost/phpmyadmin/) создайте новую базу данных с тем же именем, которое вы будете указывать в wp-config.php.
- В XAMPP → Privileges добавьте пользователя с именем и паролем вашего живого сайта и установите хост —
localhost.

- Распакуйте ту же версию WordPress в X:\xampp\htdocs\ваш_сайт.
- Отредактируйте
wp-config.php— установите DB_NAME, DB_USER, DB_PASSWORD, DB_HOST (localhost). - Скопируйте папку
wp-contentиз живого сайта в локальную копию (замените файлы, если нужно). - Экспортируйте базу из хостинга (часто в виде .sql или .gz) и импортируйте её в локальную базу через phpMyAdmin → Import.

После импорта проверьте сайт по http://localhost/ — зеркальная копия должна работать. Если в базе остались абсолютные URL (https://example.com), выполните поиск‑замену (например, с помощью WP‑CLI или Search‑Replace‑DB) чтобы заменить на http://localhost.
5. Автозапуск и удобные бат‑скрипты
Чтобы не вводить subst вручную каждый раз, создайте батник, который делает всё автоматически. Пример файла run_site.bat, положите его в корень переносного диска рядом с папкой TopSecretWriters:
@echo off
REM Определяем букву, с которой запущен батник
set DRIVE=%~d0
subst X: "%DRIVE%\TopSecretWriters"
cd /d X:\xampp
start xampp-control.exe
start xampp_start.exe
pauseФайл для остановки stop_site.bat:
@echo off
cd /d X:\xampp
start xampp_stop.exe
subst X: /d
pauseВажно: %~d0 — буква диска, откуда запущен батник. Это помогает запускать батник с любого ПК без изменения путей.
6. Запуск нескольких серверов и конфликты портов
- По умолчанию можно запускать только один локальный XAMPP‑инстанс, потому что Apache слушает порт 80, а MySQL — стандартный порт.
- Варианты работы с несколькими одинаковыми инстансами:
- Использовать разные виртуальные буквы и менять порты Apache (например, 8080, 8081) и MySQL (например, 3307). Это требует редактирования
httpd.confиmy.iniи корректировки wp‑config и URL в базе. - Запускать по очереди — один проект в момент времени (простейший способ).
- Использовать виртуализацию (VM) или контейнеры (Docker) — более гибко, но менее портативно на чужих ПК.
- Использовать разные виртуальные буквы и менять порты Apache (например, 8080, 8081) и MySQL (например, 3307). Это требует редактирования
Когда менять порты: если вам нужно одновременно открыть два локальных сайта в одной системе, измените порт Apache второго инстанса на 8080 и обращайтесь как http://localhost:8080/.
7. Типичные проблемы и способы их решения
- Apache не стартует — проверьте, не заняты ли порты 80/443 (Skype, IIS, другие сервисы).
- SUBST исчезает после перезагрузки — поместите
substв автозагрузку или используйте батник с%~d0. - База не импортируется — проверьте размер файла, таймауты phpMyAdmin; при больших дампах распакуйте .gz и импортируйте .sql через MySQL CLI.
- Ссылки и медиа ведут на живой сайт — выполните поиск‑замену URL в базе.
8. Безопасность и приватность
- На локальном сервере смените все пароли по умолчанию.
- Отключите внешние соединения к MySQL (оставьте хост =
localhost). - Не оставляйте XAMPP с работающим Apache при подключении к открытым сетям без firewall.
- Храните резервные копии дампов базы и wp‑content отдельно.
9. Альтернативные подходы (когда этот метод не подходит)
- Портативные образы виртуальной машины (VirtualBox + export) хороши, если требуются изолированные окружения с собственными сетевыми настройками.
- Docker — мощно для разработчиков, но на чужом ПК без Docker нельзя быстро запустить контейнеры.
- Server2Go — подходит для чистых тестовых окружений, но сохраняет настройки хуже, чем XAMPP.
10. Чек‑лист по ролям
Разработчик:
- [ ] Создать
wp-config.phpс локальными данными. - [ ] Запустить
run_site.batи проверить страницу /wp-admin.
Контент‑редактор:
- Проверить медиа и пути в wp‑content.
- Протестировать публикацию/редактирование записей.
Администратор:
- Изменить пароли MySQL и пользователей phpMyAdmin.
- Ограничить доступ в конфиге Apache при необходимости.
Критерии приёмки
- Сайт открывается по http://localhost/ (или с указанием порта).
- Все записи и медиа доступны локально.
- phpMyAdmin показывает импортированную базу.
- Нет конфликтов портов при старте Apache/MySQL.
Небольшая методология развертывания (5 шагов)
- Подготовить папку проекта на носителе.
- Выполнить
substили запустить батник. - Распаковать XAMPP и выполнить
setup_xampp.bat. - Создать базу, скопировать wp‑content, импортировать дамп.
- Протестировать сайт локально и скорректировать URL.
Краткое резюме
Метод с SUBST + портативным XAMPP даёт быстрый, переносной и понятный способ иметь несколько локальных сайтов на одном диске. Он прост в настройке и удобен для демонстраций и разработки, но учтите ограничение по одновременному запуску из‑за портов. Для параллельной работы потребуется дополнительная настройка портов или использование виртуализации.
Важно: если планируете регулярно переключаться между ПК, автоматизируйте subst в батниках и храните резервные дампы базы отдельно.
Источники и полезные инструменты: места скачивания XAMPP, phpMyAdmin, утилиты поиска‑замены для WordPress и инструкции по редактированию httpd.conf / my.ini.



Если хотите, могу подготовить готовые бат‑скрипты для нескольких сайтов с автоматической проверкой доступности портов и подсказками по смене конфигурации Apache/MySQL.
Похожие материалы
Как массово закрыть приложения на Mac
Xbox One не подключается к Wi‑Fi — как исправить
Как скачать старые версии Internet Explorer
PayPal для побочного заработка — приёмы и чеклисты
Конвертация M4A в MP3 на iPhone без компьютера