13-05-2026 implementation FR
This commit is contained in:
parent
245c281541
commit
70240d2b6a
61 changed files with 4472 additions and 2 deletions
119
dev/2026-05-13-dhl-modul/legacy/DHL_LIVE_SERVER_FIX.md
Normal file
119
dev/2026-05-13-dhl-modul/legacy/DHL_LIVE_SERVER_FIX.md
Normal file
|
|
@ -0,0 +1,119 @@
|
|||
# DHL Live-Server SSL-Problem - Erweiterte Lösung
|
||||
|
||||
## Problem
|
||||
|
||||
Der SSL-Fehler `cURL error 56: OpenSSL SSL_read: error:0A000126:SSL routines::unexpected eof while reading` tritt nur auf dem Live-Server auf, nicht auf dem Testserver.
|
||||
|
||||
## Erweiterte Lösung implementiert
|
||||
|
||||
### 1. Multi-Methoden-Fallback
|
||||
|
||||
Die `DhlClient` Klasse versucht jetzt automatisch mehrere Verbindungsmethoden:
|
||||
|
||||
1. **Enhanced SSL** - Optimierte SSL-Konfiguration mit HTTP/2
|
||||
2. **Relaxed SSL** - Fallback mit deaktivierter SSL-Verifikation
|
||||
3. **Direct cURL** - Direkte cURL-Implementierung als letzter Ausweg
|
||||
|
||||
### 2. Erweiterte Debug-Logs
|
||||
|
||||
- Server-Umgebungsinformationen werden automatisch geloggt
|
||||
- Detaillierte Fehlermeldungen für jede Verbindungsmethode
|
||||
- PHP, cURL und OpenSSL-Versionsinformationen
|
||||
|
||||
### 3. Live-Server-spezifische Konfiguration
|
||||
|
||||
#### Für problematische Live-Server (.env):
|
||||
|
||||
```env
|
||||
# DHL Live-Konfiguration mit SSL-Fallback
|
||||
DHL_BASE_URL=https://api-eu.dhl.com
|
||||
DHL_TEST_MODE=false
|
||||
DHL_SANDBOX=false
|
||||
|
||||
# SSL-Fallback-Optionen für Live-Server
|
||||
DHL_SSL_VERIFY_PEER=false
|
||||
DHL_SSL_VERIFY_HOST=false
|
||||
DHL_SSL_VERSION=TLSv1_2
|
||||
DHL_TIMEOUT=30
|
||||
DHL_CONNECT_TIMEOUT=15
|
||||
|
||||
# Ihre Live-Daten
|
||||
DHL_API_KEY=your_live_api_key
|
||||
DHL_USERNAME=your_live_username
|
||||
DHL_PASSWORD=your_live_password
|
||||
```
|
||||
|
||||
### 4. Test der erweiterten Lösung
|
||||
|
||||
```bash
|
||||
# Konfiguration neu laden
|
||||
php artisan config:clear
|
||||
|
||||
# Test mit Debug-Logs
|
||||
php artisan tinker
|
||||
```
|
||||
|
||||
```php
|
||||
$settingController = new \App\Http\Controllers\SettingController();
|
||||
$dhlConfig = $settingController->getDhlConfig();
|
||||
$dhlClient = new \Acme\Dhl\Support\DhlClient(
|
||||
$dhlConfig['base_url'],
|
||||
$dhlConfig['api_key'],
|
||||
$dhlConfig['username'],
|
||||
$dhlConfig['password']
|
||||
);
|
||||
|
||||
// Test mit erweiterten Debug-Logs
|
||||
$result = $dhlClient->testConnection();
|
||||
echo $result ? 'SUCCESS' : 'FAILED';
|
||||
```
|
||||
|
||||
### 5. Log-Analyse
|
||||
|
||||
Nach dem Test finden Sie in den Laravel-Logs (`storage/logs/laravel.log`):
|
||||
|
||||
- **Server Environment Debug Info** - Umgebungsdetails
|
||||
- **DHL API connection test - trying [Method]** - Jede versuchte Methode
|
||||
- **DHL API connection test successful with [Method]** - Erfolgreiche Methode
|
||||
- **DHL API connection test failed with [Method]** - Fehlgeschlagene Methoden
|
||||
|
||||
### 6. Häufige Live-Server-Probleme
|
||||
|
||||
#### Problem: Ältere OpenSSL-Version
|
||||
|
||||
```env
|
||||
DHL_SSL_VERSION=TLSv1_1
|
||||
```
|
||||
|
||||
#### Problem: Firewall/Proxy
|
||||
|
||||
```env
|
||||
DHL_TIMEOUT=60
|
||||
DHL_CONNECT_TIMEOUT=30
|
||||
```
|
||||
|
||||
#### Problem: SSL-Zertifikatsprobleme
|
||||
|
||||
```env
|
||||
DHL_SSL_VERIFY_PEER=false
|
||||
DHL_SSL_VERIFY_HOST=false
|
||||
```
|
||||
|
||||
### 7. Monitoring
|
||||
|
||||
Die Lösung loggt automatisch:
|
||||
|
||||
- Welche Verbindungsmethode erfolgreich war
|
||||
- Server-Umgebungsdetails
|
||||
- Detaillierte Fehlermeldungen
|
||||
|
||||
### 8. Rollback-Option
|
||||
|
||||
Falls die erweiterte Lösung Probleme verursacht, können Sie zur ursprünglichen Version zurückkehren, indem Sie die `testConnection()` Methode in `DhlClient.php` vereinfachen.
|
||||
|
||||
## Wichtige Hinweise
|
||||
|
||||
- Die Lösung ist vollständig abwärtskompatibel
|
||||
- Alle bestehenden Konfigurationen funktionieren weiterhin
|
||||
- Die Fallback-Methoden werden nur bei Bedarf verwendet
|
||||
- Debug-Logs helfen bei der Problemdiagnose
|
||||
Loading…
Add table
Add a link
Reference in a new issue