Przejdź do głównej zawartości

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​

  1. Zaloguj się do Panelu Enhance jako administrator
  2. Kliknij Settings w menu nawigacyjnym
  3. Przejdź do Access Tokens
  4. Kliknij Create Token
  5. Nadaj tokenowi opisową nazwę (np. „Ultimate Multisite Integration")
  6. Przypisz rolę System Administrator
  7. 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
  8. 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:

  1. Przejdź do strony Customers
  2. Kliknij Manage customer przy odpowiednim kliencie
  3. 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):

  1. W Panelu Enhance przejdź do Servers
  2. Kliknij na serwer, na którym działa Twoja instalacja WordPress
  3. Server ID (w formacie UUID) będzie widoczny w URL lub w szczegółach serwera
  4. 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​

  1. W panelu administracyjnym WordPress przejdź do Ultimate Multisite > Settings
  2. Przejdź do zakładki Integrations
  3. Znajdź Enhance Control Panel Integration i kliknij Configuration
  4. 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.php przez 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:

  1. Usuń oryginalny plik .htaccess od Enhance
  2. Zastąp go standardowym plikiem .htaccess dla WordPress Multisite

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​

  1. Użytkownik mapuje własną domenę w Ultimate Multisite (lub tworzona jest nowa strona w trybie subdomen)
  2. Integracja wysyła żądanie POST do API Enhance: /servers/{server_id}/domains
  3. Enhance dodaje domenę do konfiguracji Twojego serwera
  4. Gdy DNS zostanie rozwiązany na Twój serwer, Enhance automatycznie wydaje certyfikat SSL przez LetsEncrypt
  5. Domena staje się aktywna z HTTPS

Gdy domena jest usuwana​

  1. Mapowanie domeny zostaje usunięte w Ultimate Multisite
  2. Integracja odpytuje Enhance, aby znaleźć ID domeny
  3. Wysyłane jest żądanie DELETE do: /servers/{server_id}/domains/{domain_id}
  4. 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​

  1. W Kreatorze integracji użyj kroku Test Connection
  2. Wtyczka spróbuje wylistować domeny na Twoim serwerze
  3. 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​

  1. Zmapuj testową domenę w Ultimate Multisite
  2. Sprawdź logi Ultimate Multisite (Ultimate Multisite > Logs > integration-enhance)
  3. Zweryfikuj w Panelu Enhance, że domena została dodana:
    • Przejdź do Servers > Twój serwer > Domains
    • Nowa domena powinna pojawić się na liście
  4. 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_URL zawiera /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_TOKEN jest zdefiniowany w wp-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_ID jest zdefiniowany w wp-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:

  1. Przejdź do Ultimate Multisite > Logs
  2. Filtruj według integration-enhance
  3. 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:

  1. Przejdź do Servers > Twój serwer > Domains
  2. Znajdź swoją domenę i sprawdź jej status SSL
  3. 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:

  1. Przejdź do Ultimate Multisite > Settings > Domain Mapping
  2. Znajdź ustawienie DNS Check Interval
  3. Zmniejsz domyślną wartość 300 sekund (minimum: 10 sekund)
  4. 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​

Wsparcie​

Jeśli napotkasz problemy:

  1. Sprawdź powyższą sekcję Rozwiązywanie problemów
  2. Przejrzyj logi Ultimate Multisite
  3. Zajrzyj do Dyskusji GitHub
  4. Skontaktuj się ze wsparciem Enhance w sprawach dotyczących panelu
  5. 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