Integracja z Panelem Enhance
Przegląd
Enhance to nowoczesny panel sterowania oferujący zaawansowane możliwości automatyzacji i zarządzania hostingiem. Ta integracja umożliwia automatyczną synchronizację domen i zarządzanie certyfikatami SSL między Ultimate Multisite a Panelem Enhance.
Powiązana dyskusja: Zobacz Dyskusję GitHub #265, gdzie znajdziesz wskazówki społeczności i dodatkowe informacje.
Funkcje
- Automatyczna synchronizacja domen przy mapowaniu w Ultimate Multisite
- Automatyczne wydawanie certyfikatów SSL przez LetsEncrypt, gdy DNS zostanie rozwiązany
- Obsługa subdomen dla sieci działających w trybie subdomen
- Usuwanie domen przy usunięciu mapowania
- Testowanie połączenia w celu weryfikacji danych dostępowych API
Wymagania
Wymagania systemowe
- Zainstalowany i dostępny Panel Enhance
- Instalacja WordPress Multisite hostowana na serwerze Enhance lub z nim połączona
- Serwer Apache (Enhance obecnie obsługuje konfiguracje Apache; LiteSpeed Enterprise jest dostępny po obniżonej cenie)
Dostęp do API
Musisz mieć uprawnienia administratora do Panelu Enhance, aby móc tworzyć tokeny API.
Uzyskiwanie danych dostępowych API
1. Utwórz token API
- Zaloguj się do Panelu Enhance jako administrator
- Kliknij Settings w menu nawigacyjnym
- Przejdź do Access Tokens
- Kliknij Create Token
- Nadaj tokenowi opisową nazwę (np. „Ultimate Multisite Integration")
- Przypisz rolę System Administrator
- Dla daty wygaśnięcia:
- Pozostaw puste, jeśli token ma nigdy nie wygasać
- Lub ustaw konkretną datę wygaśnięcia dla zwiększenia bezpieczeństwa
- Kliknij Create
Po utworzeniu wyświetli się Twój Access Token i Organization ID. Zapisz je natychmiast, ponieważ token zostanie wyświetlony tylko raz.
2. Uzyskaj swoje Organization ID
Organization ID jest wyświetlane na stronie Access Tokens w niebieskim polu informacyjnym oznaczonym jako „Org ID: {twoje_id}".
Organization ID ma format UUID: d8554b6d-5d0d-6719-009b-fec1189aa8f3
Możesz również znaleźć Organization ID klienta w następujący sposób:
- Przejdź do strony Customers
- Kliknij Manage customer przy odpowiednim kliencie
- Spójrz na URL – Organization ID to znaki alfanumeryczne po
/customers/
3. Uzyskaj swój Server ID
Aby znaleźć Server ID (wymagany do operacji na domenach):
- W Panelu Enhance przejdź do Servers
- Kliknij na serwer, na którym działa Twoja instalacja WordPress
- Server ID (w formacie UUID) będzie widoczny w URL lub w szczegółach serwera
- Alternatywnie możesz użyć API do wylistowania serwerów:
curl -s -X GET https://your-enhance-panel.com/api/servers \
-H "Accept: application/json" \
-H "Authorization: Bearer YOUR_TOKEN" | jq
Server ID ma format UUID: 00000000-0000-0000-0000-000000000000
4. Uzyskaj swój URL API
Twój URL API to adres Panelu Enhance z dopisanym /api/:
https://your-enhance-panel.com/api/
Ważne: Ścieżka /api/ jest wymagana. Częste błędy to:
- Używanie samej domeny bez
/api/ - Używanie HTTP zamiast HTTPS (HTTPS jest wymagany ze względów bezpieczeństwa)
Konfiguracja
Wymagane stałe
Dodaj następujące stałe do pliku 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');
Konfiguracja przez Kreator integracji
- W panelu administracyjnym WordPress przejdź do Ultimate Multisite > Settings
- Przejdź do zakładki Integrations
- Znajdź Enhance Control Panel Integration i kliknij Configuration
- Kreator przeprowadzi Cię przez konfigurację:
- Krok 1: Wprowadzenie i przegląd funkcji
- Krok 2: Wprowadź dane dostępowe API (Token, URL API, Server ID)
- Krok 3: Przetestuj połączenie
- Krok 4: Przegląd i aktywacja
Możesz wybrać:
- Automatyczne dodanie stałych do pliku
wp-config.phpprzez kreator - Skopiowanie definicji stałych i dodanie ich ręcznie
Dodatkowa konfiguracja WordPress
Na podstawie opinii społeczności (Dyskusja #265) może być konieczne skonfigurowanie tych dodatkowych ustawień:
Konfiguracja .htaccess
Jeśli masz problemy z mapowaniem domen:
- Usuń oryginalny plik
.htaccessod Enhance - Zastąp go standardowym plikiem
.htaccessdla WordPress Multisite
Stałe dla ciasteczek
Dodaj te stałe do wp-config.php, aby zapewnić prawidłową obsługę ciasteczek na mapowanych domenach:
define('COOKIE_DOMAIN', $_SERVER['HTTP_HOST']);
define('COOKIEPATH', '/');
define('ADMIN_COOKIE_PATH', '/');
Jak to działa
Gdy domena jest mapowana
- Użytkownik mapuje własną domenę w Ultimate Multisite (lub tworzona jest nowa strona w trybie subdomen)
- Integracja wysyła żądanie POST do API Enhance:
/servers/{server_id}/domains - Enhance dodaje domenę do konfiguracji Twojego serwera
- Gdy DNS zostanie rozwiązany na Twój serwer, Enhance automatycznie wydaje certyfikat SSL przez LetsEncrypt
- Domena staje się aktywna z HTTPS
Gdy domena jest usuwana
- Mapowanie domeny zostaje usunięte w Ultimate Multisite
- Integracja odpytuje Enhance, aby znaleźć ID domeny
- Wysyłane jest żądanie DELETE do:
/servers/{server_id}/domains/{domain_id} - Enhance usuwa domenę z konfiguracji Twojego serwera
Sprawdzanie DNS i SSL
Ultimate Multisite ma wbudowane sprawdzanie DNS i SSL:
- Możesz skonfigurować interwał sprawdzania w Domain Mapping Settings (domyślnie: 300 sekund/5 minut)
- System zweryfikuje propagację DNS przed oznaczeniem domeny jako aktywnej
- Ważność certyfikatu SSL jest sprawdzana automatycznie
- Enhance obsługuje wydawanie SSL automatycznie, więc ręczna konfiguracja SSL nie jest wymagana
Weryfikacja konfiguracji
Testowanie połączenia
- W Kreatorze integracji użyj kroku Test Connection
- Wtyczka spróbuje wylistować domeny na Twoim serwerze
- Komunikat o powodzeniu potwierdza:
- Dane dostępowe API są poprawne
- URL API jest dostępny
- Server ID jest prawidłowy
- Uprawnienia są właściwie ustawione
Po zmapowaniu domeny
- Zmapuj testową domenę w Ultimate Multisite
- Sprawdź logi Ultimate Multisite (Ultimate Multisite > Logs > integration-enhance)
- Zweryfikuj w Panelu Enhance, że domena została dodana:
- Przejdź do Servers > Twój serwer > Domains
- Nowa domena powinna pojawić się na liście
- Po propagacji DNS zweryfikuj, że SSL został automatycznie wydany
Rozwiązywanie problemów
Problemy z połączeniem API
Błąd: „Failed to connect to Enhance API"
- Sprawdź, czy
WU_ENHANCE_API_URLzawiera/api/na końcu - Upewnij się, że używasz HTTPS, a nie HTTP
- Sprawdź, czy Panel Enhance jest dostępny z Twojego serwera WordPress
- Zweryfikuj, czy żadne reguły firewalla nie blokują połączenia
Błąd: „Enhance API Token not found"
- Upewnij się, że
WU_ENHANCE_API_TOKENjest zdefiniowany wwp-config.php - Sprawdź, czy token nie został usunięty lub nie wygasł w Enhance
- Sprawdź, czy nie ma literówek w wartości tokena
Błąd: „Server ID is not configured"
- Zweryfikuj, że
WU_ENHANCE_SERVER_IDjest zdefiniowany wwp-config.php - Upewnij się, że Server ID ma prawidłowy format UUID
- Potwierdź, że serwer istnieje w Twoim Panelu Enhance
Domena nie została dodana
Sprawdź logi:
- Przejdź do Ultimate Multisite > Logs
- Filtruj według integration-enhance
- Szukaj komunikatów o błędach wskazujących na problem
Częste przyczyny:
- Nieprawidłowy format nazwy domeny
- Domena już istnieje w Enhance
- Niewystarczające uprawnienia API (upewnij się, że token ma rolę System Administrator)
- Server ID nie odpowiada faktycznemu serwerowi w Enhance
Problemy z certyfikatem SSL
SSL się nie wydaje:
- Sprawdź, czy DNS wskazuje na adres IP Twojego serwera
- Upewnij się, że domena się rozwiązuje poprawnie:
nslookup twojadomena.com - Enhance wymaga rozwiązania DNS przed wydaniem SSL
- Wydanie SSL trwa zazwyczaj 5-10 minut po propagacji DNS
- Sprawdź logi Panelu Enhance w poszukiwaniu błędów związanych z SSL
Ręczne rozwiązywanie problemów z SSL w Enhance:
- Przejdź do Servers > Twój serwer > Domains
- Znajdź swoją domenę i sprawdź jej status SSL
- W razie potrzeby możesz ręcznie wywołać wydanie SSL
Interwał sprawdzania DNS
Jeśli aktywacja domen lub certyfikatów SSL trwa zbyt długo:
- Przejdź do Ultimate Multisite > Settings > Domain Mapping
- Znajdź ustawienie DNS Check Interval
- Zmniejsz domyślną wartość 300 sekund (minimum: 10 sekund)
- Uwaga: Niższe interwały oznaczają częstsze sprawdzanie, ale większe obciążenie serwera
Błędy uwierzytelniania
Błędy HTTP 401/403:
- Wygeneruj ponownie token API w Enhance
- Sprawdź, czy token ma rolę System Administrator
- Upewnij się, że token nie wygasł
- Zweryfikuj, że używasz prawidłowego Organization ID (choć zazwyczaj nie jest wymagany w URL)
Analiza logów
Włącz szczegółowe logowanie:
// Dodaj do wp-config.php dla rozszerzonego debugowania
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
Następnie sprawdź logi w:
- Logi Ultimate Multisite: Ultimate Multisite > Logs
- Log debugowania WordPress:
wp-content/debug.log - Logi Panelu Enhance: Dostępne w interfejsie administracyjnym Enhance
Dokumentacja API
Uwierzytelnianie
Wszystkie żądania API używają uwierzytelniania tokenem Bearer:
Authorization: Bearer YOUR_TOKEN_HERE
Najczęściej używane endpointy
Lista serwerów:
GET /servers
Lista domen na serwerze:
GET /servers/{server_id}/domains
Dodaj domenę:
POST /servers/{server_id}/domains
Body: {"domain": "example.com"}
Usuń domenę:
DELETE /servers/{server_id}/domains/{domain_id}
Pełna dokumentacja API
Kompletna dokumentacja API: https://apidocs.enhance.com
Dobre praktyki
Bezpieczeństwo
- Nigdy nie commituj tokenów API do repozytorium
- Przechowuj tokeny w
wp-config.php, który powinien być wykluczony z Git - Używaj tokenów z odpowiednimi uprawnieniami (System Administrator dla pełnej integracji)
- Ustawiaj daty wygaśnięcia tokenów w środowiskach produkcyjnych
- Okresowo rotuj tokeny
Wydajność
- Używaj domyślnego interwału sprawdzania DNS (300 sekund), aby uniknąć nadmiernych wywołań API
- Monitoruj zasoby serwera Enhance przy dużych operacjach na domenach
- Rozważ rozłożenie w czasie dodawania domen, jeśli mapujesz wiele naraz
Monitorowanie
- Regularnie sprawdzaj logi Ultimate Multisite pod kątem błędów integracji
- Skonfiguruj monitoring nieudanych dodań domen
- Weryfikuj, czy certyfikaty SSL są wydawane poprawnie
- Obserwuj pojemność serwera Enhance i limity domen
Dodatkowe zasoby
- Oficjalna dokumentacja Enhance: https://enhance.com/docs
- Dokumentacja API Enhance: https://apidocs.enhance.com
- Forum społeczności Enhance: https://community.enhance.com
- Dyskusja GitHub: Issue #265 - Enhance Integration Tips
- Przewodnik po mapowaniu domen Ultimate Multisite: Zobacz stronę wiki „How to Configure Domain Mapping v2"
Wsparcie
Jeśli napotkasz problemy:
- Sprawdź powyższą sekcję Rozwiązywanie problemów
- Przejrzyj logi Ultimate Multisite
- Zajrzyj do Dyskusji GitHub
- Skontaktuj się ze wsparciem Enhance w sprawach dotyczących panelu
- Utwórz nową dyskusję ze szczegółowymi logami błędów, aby uzyskać pomoc społeczności
Uwagi
- Ta integracja obsługuje tylko aliasy domen; Enhance zarządza SSL automatycznie
- Integracja obsługuje zarówno niestandardowe mapowania domen, jak i strony oparte na subdomenach
- Automatyczne tworzenie subdomeny www można skonfigurować w ustawieniach Domain Mapping
- Enhance obecnie obsługuje konfiguracje Apache (LiteSpeed Enterprise jest dostępny)
- Usunięcie domeny z Ultimate Multisite spowoduje jej usunięcie z Enhance, ale może nie usunąć od razu powiązanych certyfikatów SSL