Интеграция с панелью управления Enhance
Обзор
Enhance — это современная панель управления, которая обеспечивает мощную автоматизацию хостинга и возможности управления. Эта интеграция позволяет автоматически синхронизировать домены и управлять сертификатами SSL между Ultimate Multisite и панелью управления Enhance.
Связанный обсуждение: См. GitHub Discussion #265 для советов сообщества и дополнительной информации.
Возможности
- Автоматическая синхронизация доменов при их привязке в Ultimate Multisite
- Автоматическое выдавание сертификатов SSL через LetsEncrypt при разрешении DNS
- Поддержка поддоменов для сетей, работающих в режиме поддоменов
- Удаление домена при удалении привязки
- Тестирование соединения для проверки учетных данных API
Требования
Системные требования
- Установлена и доступна панель управления Enhance
- Установка WordPress Multisite размещена на сервере Enhance или подключена к нему
- Веб-сервер Apache (Enhance в настоящее время поддерживает конфигурации Apache; LiteSpeed Enterprise доступен по сниженной цене)
Доступ к API
Вы должны иметь административный доступ к панели управления Enhance, чтобы создавать токены API.
Получение ваших учетных данных API
1. Создание токена API
- Войдите в панель управления Enhance как администратор
- Нажмите Settings в меню навигации
- Перейдите в Access Tokens
- Нажмите Create Token
- Укажите описательное имя токена (например, "Ultimate Multisite Integration")
- Назначьте роль System Administrator
- Для даты истечения срока действия:
- Оставьте пустым, если хотите, чтобы токен никогда не истекал
- Или установите конкретную дату истечения срока для целей безопасности
- Нажмите Create
После создания в вашем интерфейсе отобразятся Access Token и Organization ID. Сохраните их сразу, так как токен будет показан только один раз.
2. Получение вашего Organization ID
Organization ID отображается на странице Access Tokens в синем информационном блоке с надписью "Org ID: {your_id}".
Organization ID — это UUID, отформатированный как: d8554b6d-5d0d-6719-009b-fec1189aa8f3
Вы также можете найти Organization ID клиента, выполнив:
- Перейдите на страницу Customers
- Нажмите Manage customer дл я соответствующего клиента
- Посмотрите URL — Organization ID — это буквенно-цифровые символы после
/customers/
3. Получение вашего Server ID
Чтобы найти ваш Server ID (необходимый для операций с доменами):
- В панели управления Enhance перейдите в Servers
- Нажмите на сервер, где запущена ваша установка WordPress
- Server ID (в формате UUID) будет виден в URL или в деталях сервера
- В качестве альтернативы вы можете использовать API для получения списка серверов:
curl -s -X GET https://your-enhance-panel.com/api/servers \
-H "Accept: application/json" \
-H "Authorization: Bearer YOUR_TOKEN" | jq
Server ID имеет формат UUID: 00000000-0000-0000-0000-000000000000
4. Получение вашего API URL
Ваш API URL — это URL панели управления Enhance с добавленным /api/:
https://your-enhance-panel.com/api/
Важно: Путь /api/ обязателен. Распространенные ошибки:
- Использование только домена без
/api/ - Использование HTTP вместо HTTPS (HTTPS требуется для безопасности)
Конфигурация
Необходимые константы
Добавьте следующие константы в файл wp-config.php:
// Enhance Control Panel Integration
define('WU_ENHANCE_API_TOKEN', 'your-bearer-token-here');
define('WU_ENHANCE_API_URL', 'https://your-enhance-panel.com/api/');
define('WU_ENHANCE_SERVER_ID', 'your-server-uuid-here');
Настройка через мастер интеграции
- В админке WordPress перейдите в Ultimate Multisite > Settings
- Перейдите на вкладку Integrations
- Найдите Enhance Control Panel Integration и нажмите Configuration
- Мастер проведет вас через настройку:
- Шаг 1: Введение и обзор функций
- Шаг 2: Введите ваши учетные данные API (Token, API URL, Server ID)
- Шаг 3: Проверьте соединение
- Шаг 4: Проверьте и активируйте
Вы можете выбрать:
- Позволить мастеру автоматически добавить константы в ваш файл
wp-config.php - Скопировать определения констант и добавить их вручную
Дополнительная конфигурация WordPress
На основе отзывов сообщества (Discussion #265), возможно, вам понадобится настроить следующие дополнительные параметры:
Конфигурация .htaccess
Если вы столкнулись с проблемами привязки доменов:
- Удалите оригинальный файл
.htaccessEnhance - Замените его стандартным файлом
.htaccessWordPress Multisite
Константы cookie
Добавьте эти константы в wp-config.php, чтобы обеспечить правильную работу cookie на привязанных доменах:
define('COOKIE_DOMAIN', $_SERVER['HTTP_HOST']);
define('COOKIEPATH', '/');
define('ADMIN_COOKIE_PATH', '/');
Как это работает
Когда домен привязан
- Пользователь привязывает пользовательский домен в Ultimate Multisite (или создается новый сайт в режиме поддоменов)
- Интеграция отправляет POST-запрос к API Enhance:
/servers/{server_id}/domains - Enhance добавляет домен в конфигурацию вашего сервера
- Когда DNS указывает на ваш сервер, Enhance автоматически выдаёт сертификат SSL через LetsEncrypt
- Домен становится активным с HTTPS
Когда домен удаляется
- Привязка домена удалена в Ultimate Multisite
- Интеграция запрашивает Enhance, чтобы найти ID домена
- Отправляется DELETE-запрос:
/servers/{server_id}/domains/{domain_id} - Enhance удаляет домен из конфигурации вашего сервера
Проверка DNS и SSL
Ultimate Multisite включает встроенную проверку DNS и SSL:
- Вы можете настроить интервал проверки в Domain Mapping Settings (по умолчанию: 300 секунд/5 минут)
- Система проверит распространение DNS перед тем, как пометить домен как активный
- Проверка действительности сертификата SSL выполняется автоматически
- Enhance автоматически обрабатывает выдачу SSL, поэтому ручная настройка SSL не требуется