508 lines
12 KiB
Markdown
508 lines
12 KiB
Markdown
# Troubleshooting Guide - KeyHelp Manager WHMCS Modul
|
|
|
|
Dieser Guide hilft bei der Fehlersuche und Behebung häufiger Probleme mit dem KeyHelp Manager Modul.
|
|
|
|
## 📋 Inhaltsverzeichnis
|
|
|
|
- [Fehler beim Server hinzufügen](#fehler-beim-server-hinzufügen)
|
|
- [SSL-Zertifikat-Probleme](#ssl-zertifikat-probleme)
|
|
- [API-Endpunkt-Fehler](#api-endpunkt-fehler)
|
|
- [Account-Erstellung schlägt fehl](#account-erstellung-schlägt-fehl)
|
|
- [Client Area zeigt keine Daten](#client-area-zeigt-keine-daten)
|
|
- [Template-Probleme](#template-probleme)
|
|
- [Allgemeine Debugging-Tipps](#allgemeine-debugging-tipps)
|
|
|
|
---
|
|
|
|
## Fehler beim Server hinzufügen
|
|
|
|
### Problem: "Oops! Something went wrong" beim Öffnen der Server-Konfiguration
|
|
|
|
**Symptom:**
|
|
```
|
|
Oops!
|
|
Something went wrong and we couldn't process your request.
|
|
Please go back to the previous page and try again.
|
|
```
|
|
|
|
**Ursachen:**
|
|
1. PHP-Fehler beim Laden der ConfigOptions
|
|
2. Template-Loader versucht API-Call ohne vollständige Server-Daten
|
|
3. Fehlende oder ungültige Server-Einstellungen
|
|
|
|
**Lösung:**
|
|
|
|
1. **WHMCS Display Errors aktivieren:**
|
|
- Gehe zu: **Setup → General Settings → Other**
|
|
- Aktiviere: **Display Errors**
|
|
- Versuche erneut, die Server-Seite zu laden
|
|
- Notiere die genaue Fehlermeldung
|
|
|
|
2. **PHP Error Log prüfen:**
|
|
```bash
|
|
tail -f /var/log/php/error.log
|
|
# oder
|
|
tail -f /var/www/whmcs/storage/logs/laravel.log
|
|
```
|
|
|
|
3. **Modul-Datei ersetzen:**
|
|
- Stelle sicher, dass du die neueste Version verwendest
|
|
- Die Datei muss die korrigierten Template-Loader-Funktionen enthalten
|
|
|
|
4. **Temporärer Fix - Module deaktivieren:**
|
|
```sql
|
|
-- In phpMyAdmin oder MySQL Console
|
|
UPDATE tblservers SET type = '' WHERE id = 10;
|
|
```
|
|
Dann kannst du die Seite öffnen und den Server neu konfigurieren.
|
|
|
|
---
|
|
|
|
## SSL-Zertifikat-Probleme
|
|
|
|
### Problem: "cURL error 60: SSL certificate problem"
|
|
|
|
**Vollständige Fehlermeldung:**
|
|
```
|
|
cURL error 60: SSL: no alternative certificate subject name matches target host name '5.83.148.129'
|
|
```
|
|
|
|
**Ursache:**
|
|
SSL-Zertifikat wurde für einen Domain-Namen ausgestellt, aber du verwendest eine IP-Adresse.
|
|
|
|
**Lösung:**
|
|
|
|
✅ **Automatisch gelöst ab v2.0.1:**
|
|
Das Modul erkennt IP-Adressen automatisch und deaktiviert die SSL-Verifizierung.
|
|
|
|
**Manuelle Lösung bei älteren Versionen:**
|
|
1. Gehe zu: **Setup → Products/Services → Servers**
|
|
2. Bearbeite deinen KeyHelp-Server
|
|
3. Füge im Feld **NOC** oder einer Custom-Option ein: `no-verify`
|
|
4. Speichern
|
|
|
|
**Beste Lösung für Produktion:**
|
|
```
|
|
1. Erstelle einen A-Record in DNS:
|
|
keyhelp.example.com → 5.83.148.129
|
|
|
|
2. Installiere Let's Encrypt auf dem KeyHelp-Server
|
|
|
|
3. Verwende den Domain-Namen in WHMCS:
|
|
Hostname: keyhelp.example.com (statt 5.83.148.129)
|
|
```
|
|
|
|
➡️ Siehe [SSL_TROUBLESHOOTING.md](SSL_TROUBLESHOOTING.md) für Details
|
|
|
|
---
|
|
|
|
## API-Endpunkt-Fehler
|
|
|
|
### Problem: "KeyHelp API Error: Endpoint not found"
|
|
|
|
**Ursache:**
|
|
Das Modul verwendet falsche API-Endpunkte. KeyHelp verwendet `/clients`, nicht `/users`.
|
|
|
|
**Lösung:**
|
|
|
|
✅ **Behoben ab v2.0.1:**
|
|
- Alle Endpunkte wurden auf `/clients` korrigiert
|
|
- Parameter wurden angepasst (`id_client` statt `user_id`)
|
|
|
|
**Prüfen:**
|
|
1. Stelle sicher, dass du die neueste Modul-Version verwendest
|
|
2. Prüfe die Datei: `keyhelpmanager.php` sollte `/clients` verwenden
|
|
|
|
**Manueller Test:**
|
|
```bash
|
|
# Teste ob der API-Endpunkt funktioniert
|
|
curl -X GET https://DEINE-IP/api/v2/clients \
|
|
-H "X-API-Key: DEIN-API-KEY" \
|
|
-H "Accept: application/json" \
|
|
-k
|
|
|
|
# Sollte eine Liste oder leeres Array zurückgeben, nicht "Endpoint not found"
|
|
```
|
|
|
|
➡️ Siehe [KEYHELP_API_REFERENCE.md](KEYHELP_API_REFERENCE.md) für korrekte Endpunkte
|
|
|
|
---
|
|
|
|
## Account-Erstellung schlägt fehl
|
|
|
|
### Problem: "Failed to create account in KeyHelp"
|
|
|
|
**Mögliche Ursachen:**
|
|
|
|
#### 1. API-Key ist falsch oder hat keine Rechte
|
|
|
|
**Prüfung:**
|
|
```bash
|
|
curl -X GET https://DEINE-IP/api/v2/server/version \
|
|
-H "X-API-Key: DEIN-API-KEY" \
|
|
-H "Accept: application/json" \
|
|
-k
|
|
```
|
|
|
|
**Erwartete Antwort:**
|
|
```json
|
|
{"version":"24.3.1","build":"3456"}
|
|
```
|
|
|
|
**Bei Fehler:**
|
|
- Erstelle einen neuen API-Key in KeyHelp
|
|
- Stelle sicher, dass der Key **Admin-Rechte** hat
|
|
- Trage ihn im **Password**-Feld der WHMCS Server-Konfiguration ein
|
|
|
|
#### 2. Domain existiert bereits
|
|
|
|
**Fehlermeldung:**
|
|
```
|
|
Domain creation failed: Domain already exists
|
|
```
|
|
|
|
**Lösung:**
|
|
- Lösche die Domain in KeyHelp manuell
|
|
- Oder verwende eine andere Test-Domain
|
|
|
|
#### 3. Ungültige Parameter
|
|
|
|
**Häufige Fehler:**
|
|
```
|
|
- Leere Domain
|
|
- Ungültiges E-Mail-Format
|
|
- Domain enthält ungültige Zeichen
|
|
- Username zu kurz/lang
|
|
```
|
|
|
|
**Prüfung:**
|
|
1. Gehe zu: **Utilities → Logs → Module Log**
|
|
2. Suche nach: `keyhelpmanager`
|
|
3. Prüfe Request und Response
|
|
|
|
**Beispiel eines korrekten Requests:**
|
|
```json
|
|
{
|
|
"login_name": "example_com",
|
|
"password": "SecurePass123!",
|
|
"email": "user@example.com",
|
|
"display_name": "Max Mustermann"
|
|
}
|
|
```
|
|
|
|
#### 4. Template/Hosting-Plan existiert nicht
|
|
|
|
**Fehlermeldung:**
|
|
```
|
|
Invalid hosting plan ID
|
|
```
|
|
|
|
**Lösung:**
|
|
- Wähle "Manual Configuration (No Template)" im Produkt
|
|
- Oder erstelle den Hosting-Plan in KeyHelp
|
|
|
|
---
|
|
|
|
## Client Area zeigt keine Daten
|
|
|
|
### Problem: Statistiken werden nicht angezeigt
|
|
|
|
**Symptom:**
|
|
- Client Area lädt, aber zeigt keine Speicher-/Traffic-Statistiken
|
|
- Fortschrittsbalken fehlen
|
|
|
|
**Ursachen:**
|
|
|
|
#### 1. User-ID wurde nicht gespeichert
|
|
|
|
**Prüfung:**
|
|
```sql
|
|
SELECT * FROM tblcustomfieldsvalues
|
|
WHERE relid = DEINE_SERVICE_ID;
|
|
```
|
|
|
|
Sollte eine Zeile mit `userid` enthalten.
|
|
|
|
**Lösung:**
|
|
- Account neu erstellen
|
|
- Oder User-ID manuell in Custom Fields eintragen
|
|
|
|
#### 2. API-Endpunkt /clients/{id}/statistics nicht verfügbar
|
|
|
|
**Test:**
|
|
```bash
|
|
curl -X GET https://DEINE-IP/api/v2/clients/1/statistics \
|
|
-H "X-API-Key: DEIN-API-KEY" \
|
|
-H "Accept: application/json" \
|
|
-k
|
|
```
|
|
|
|
**Bei Fehler:**
|
|
- Prüfe KeyHelp-Version (benötigt API v2)
|
|
- Update KeyHelp auf die neueste Version
|
|
|
|
#### 3. Template wird nicht angezeigt
|
|
|
|
**Ursache:**
|
|
Template-ID ist "manual" oder leer.
|
|
|
|
**Lösung:**
|
|
Das ist normal bei "Manual Configuration" - keine Templates verfügbar.
|
|
|
|
---
|
|
|
|
## Template-Probleme
|
|
|
|
### Problem: "Error loading templates" oder Dropdown ist leer
|
|
|
|
**Symptom:**
|
|
Bei Produktkonfiguration zeigt das Template-Dropdown:
|
|
```
|
|
-- Error loading templates --
|
|
```
|
|
oder
|
|
```
|
|
-- Select Template --
|
|
Manual Configuration (No Template)
|
|
```
|
|
|
|
**Ursachen:**
|
|
|
|
#### 1. API-Endpunkt /plans existiert nicht (KeyHelp Free)
|
|
|
|
**Das ist normal!** KeyHelp Free hat keine Hosting-Pläne.
|
|
|
|
**Lösung:**
|
|
- Wähle "Manual Configuration (No Template)"
|
|
- Konfiguriere Limits manuell in KeyHelp
|
|
|
|
#### 2. Server ist nicht konfiguriert
|
|
|
|
**Lösung:**
|
|
1. Gehe zu: **Setup → Products/Services → Servers**
|
|
2. Stelle sicher, dass der KeyHelp-Server konfiguriert ist
|
|
3. Test Connection muss erfolgreich sein
|
|
|
|
#### 3. API-Key hat keine Rechte zum Abrufen von Plänen
|
|
|
|
**Lösung:**
|
|
- API-Key benötigt **Admin-Rechte**
|
|
- Erstelle einen neuen Key mit vollen Rechten
|
|
|
|
### Problem: Templates synchronisieren nicht
|
|
|
|
**Symptom:**
|
|
Nach Erstellen neuer Hosting-Pläne in KeyHelp erscheinen diese nicht in WHMCS.
|
|
|
|
**Lösung:**
|
|
1. Gehe zum Produkt in WHMCS
|
|
2. Tab: **Module Settings**
|
|
3. Klicke: **Sync Templates** (falls verfügbar)
|
|
4. Oder warte 5 Minuten (Cache-Zeit)
|
|
|
|
---
|
|
|
|
## Allgemeine Debugging-Tipps
|
|
|
|
### 1. WHMCS Module Log aktivieren
|
|
|
|
```
|
|
Setup → General Settings → Logging
|
|
✓ Enable Module Log
|
|
```
|
|
|
|
Dann prüfen:
|
|
```
|
|
Utilities → Logs → Module Log
|
|
Filter: keyhelpmanager
|
|
```
|
|
|
|
### 2. Activity Log prüfen
|
|
|
|
```
|
|
System Settings → Activity Log
|
|
Suche nach: "KeyHelp" oder "SSL verification"
|
|
```
|
|
|
|
### 3. PHP Error Log
|
|
|
|
**Linux:**
|
|
```bash
|
|
tail -f /var/log/php/error.log
|
|
tail -f /var/log/apache2/error.log
|
|
tail -f /var/log/nginx/error.log
|
|
```
|
|
|
|
**WHMCS Laravel Log:**
|
|
```bash
|
|
tail -f /var/www/whmcs/storage/logs/laravel.log
|
|
```
|
|
|
|
### 4. Debugging-Modus aktivieren
|
|
|
|
In `keyhelpmanager.php` temporär hinzufügen:
|
|
```php
|
|
// Am Anfang der _keyhelpmanager_APIRequest Funktion
|
|
error_log("KeyHelp API Request: " . $method . " " . $endpoint);
|
|
error_log("KeyHelp API Data: " . json_encode($data));
|
|
```
|
|
|
|
### 5. API direkt testen
|
|
|
|
**Connection Test:**
|
|
```bash
|
|
curl -k https://5.83.148.129/api/v2/server/version \
|
|
-H "X-API-Key: DEIN_KEY" \
|
|
-v
|
|
```
|
|
|
|
**Client erstellen:**
|
|
```bash
|
|
curl -k -X POST https://5.83.148.129/api/v2/clients \
|
|
-H "X-API-Key: DEIN_KEY" \
|
|
-H "Content-Type: application/json" \
|
|
-d '{
|
|
"login_name": "testuser",
|
|
"password": "TestPass123!",
|
|
"email": "test@example.com",
|
|
"display_name": "Test User"
|
|
}'
|
|
```
|
|
|
|
### 6. Datenbank prüfen
|
|
|
|
**Server-Konfiguration:**
|
|
```sql
|
|
SELECT * FROM tblservers WHERE id = 10;
|
|
```
|
|
|
|
**Custom Fields:**
|
|
```sql
|
|
SELECT * FROM tblcustomfields
|
|
WHERE type = 'product'
|
|
AND fieldname LIKE '%keyhelp%';
|
|
```
|
|
|
|
**Service-Details:**
|
|
```sql
|
|
SELECT * FROM tblhosting WHERE id = SERVICE_ID;
|
|
```
|
|
|
|
### 7. Modul neu laden
|
|
|
|
Nach Änderungen:
|
|
```bash
|
|
# Cache leeren
|
|
rm -rf /var/www/whmcs/storage/cache/*
|
|
rm -rf /var/www/whmcs/bootstrap/cache/*
|
|
|
|
# Oder im WHMCS Admin
|
|
Setup → General Settings → Other → Clear Cache
|
|
```
|
|
|
|
---
|
|
|
|
## Häufige Fehlermeldungen
|
|
|
|
| Fehlermeldung | Ursache | Lösung |
|
|
|---------------|---------|--------|
|
|
| "KeyHelp server not configured" | Server-Einstellungen fehlen | Server in WHMCS konfigurieren |
|
|
| "Endpoint not found" | Falsche API-Endpunkte | Modul auf v2.0.1+ aktualisieren |
|
|
| "Invalid API key" | API-Key falsch oder abgelaufen | Neuen API-Key in KeyHelp erstellen |
|
|
| "cURL error 60" | SSL-Zertifikat-Problem | Siehe SSL_TROUBLESHOOTING.md |
|
|
| "User created but no ID returned" | API-Response ungültig | KeyHelp-Version prüfen |
|
|
| "Domain already exists" | Domain ist schon vorhanden | Domain in KeyHelp löschen |
|
|
| "Connection timeout" | Server nicht erreichbar | Firewall/Netzwerk prüfen |
|
|
|
|
---
|
|
|
|
## Checkliste zur Fehlersuche
|
|
|
|
Arbeite diese Liste systematisch ab:
|
|
|
|
- [ ] WHMCS Version 8.13+ installiert?
|
|
- [ ] PHP Version 8.3+ aktiv?
|
|
- [ ] Modul-Dateien korrekt hochgeladen?
|
|
- [ ] Server in WHMCS konfiguriert?
|
|
- [ ] Hostname/IP korrekt eingetragen?
|
|
- [ ] API-Key im Password-Feld eingetragen?
|
|
- [ ] Test Connection erfolgreich?
|
|
- [ ] SSL-Konfiguration korrekt?
|
|
- [ ] Produkt mit Server verknüpft?
|
|
- [ ] Module Log aktiviert?
|
|
- [ ] Display Errors aktiviert (für Entwicklung)?
|
|
- [ ] KeyHelp-Version aktuell?
|
|
- [ ] API v2 in KeyHelp aktiviert?
|
|
- [ ] Firewall lässt WHMCS-Server zu?
|
|
|
|
---
|
|
|
|
## Support erhalten
|
|
|
|
### 1. Informationen sammeln
|
|
|
|
Bereite folgende Informationen vor:
|
|
|
|
```
|
|
WHMCS Version: _____
|
|
PHP Version: _____
|
|
KeyHelp Version: _____
|
|
Modul Version: _____
|
|
Fehlermeldung: _____
|
|
Module Log: (kopiere relevante Zeilen)
|
|
Verwendete IP oder Domain: _____
|
|
SSL aktiviert: Ja/Nein
|
|
```
|
|
|
|
### 2. Logs exportieren
|
|
|
|
**Module Log:**
|
|
```
|
|
Utilities → Logs → Module Log
|
|
Export → CSV
|
|
```
|
|
|
|
**Activity Log:**
|
|
```
|
|
System Settings → Activity Log
|
|
Filter nach "KeyHelp"
|
|
```
|
|
|
|
### 3. API-Test durchführen
|
|
|
|
```bash
|
|
# Test 1: Version abrufen
|
|
curl -k https://DEINE-IP/api/v2/server/version \
|
|
-H "X-API-Key: DEIN_KEY"
|
|
|
|
# Test 2: Clients auflisten
|
|
curl -k https://DEINE-IP/api/v2/clients \
|
|
-H "X-API-Key: DEIN_KEY"
|
|
```
|
|
|
|
### 4. Kontakt
|
|
|
|
**Für WHMCS-Modul:**
|
|
- E-Mail: info@avvgo.de
|
|
- Website: https://avvgo.de
|
|
|
|
**Für KeyHelp API:**
|
|
- Forum: https://community.keyhelp.de/
|
|
- Support: support@keyhelp.de
|
|
- Wiki: https://wiki.keyhelp.de/
|
|
|
|
---
|
|
|
|
## Weitere Ressourcen
|
|
|
|
- [README.md](README.md) - Allgemeine Dokumentation
|
|
- [INSTALLATION.md](INSTALLATION.md) - Installations-Anleitung
|
|
- [SSL_TROUBLESHOOTING.md](SSL_TROUBLESHOOTING.md) - SSL-spezifische Probleme
|
|
- [KEYHELP_API_REFERENCE.md](KEYHELP_API_REFERENCE.md) - API-Dokumentation
|
|
- [QUICKSTART.md](QUICKSTART.md) - Schnelleinstieg
|
|
|
|
---
|
|
|
|
**Version:** 2.0.1
|
|
**Letzte Aktualisierung:** 2024
|
|
**Entwickelt von:** Kevin Feiler / AVVGO |