Script erstellt

This commit is contained in:
Housemann
2025-08-10 18:09:07 +02:00
commit 2a15995cbb
196 changed files with 24790 additions and 0 deletions

218
debug-logout.php Normal file
View File

@@ -0,0 +1,218 @@
<?php
// Debug: Logout-Problem systematisch debuggen
echo "🚪 Debug: Logout-Problem systematisch debuggen\n";
echo "=============================================\n\n";
// 1. Aktuelles Layout prüfen
echo "1. 🎨 Aktuelles Layout prüfen...\n";
$layoutPath = 'resources/views/layouts/app.blade.php';
if (file_exists($layoutPath)) {
$content = file_get_contents($layoutPath);
// Suche nach Logout-Form
if (strpos($content, 'logout-form') !== false) {
echo " ✅ Logout-Form gefunden\n";
// Zeige Logout-Form Details
$lines = explode("\n", $content);
foreach ($lines as $lineNumber => $line) {
if (strpos($line, 'logout') !== false) {
echo " 📋 Zeile " . ($lineNumber + 1) . ": " . trim($line) . "\n";
}
}
} else {
echo " ❌ Logout-Form nicht gefunden\n";
}
// Prüfe Route-Verwendung
if (strpos($content, '{{ route("logout") }}') !== false) {
echo " ✅ Laravel Route wird verwendet\n";
} elseif (strpos($content, 'https://neonail.vogt.de.com/logout') !== false) {
echo " ❌ Hardcodierte URL wird verwendet\n";
} else {
echo " ❓ Unbekannte Logout-Konfiguration\n";
}
} else {
echo " ❌ Layout-Datei nicht gefunden\n";
}
// 2. Routes prüfen
echo "\n2. 🛣️ Routes prüfen...\n";
$routesPath = 'routes/web.php';
if (file_exists($routesPath)) {
$content = file_get_contents($routesPath);
// Zeige alle Logout-bezogenen Zeilen
$lines = explode("\n", $content);
$logoutLines = [];
foreach ($lines as $lineNumber => $line) {
if (strpos($line, 'logout') !== false) {
$logoutLines[] = ($lineNumber + 1) . ": " . trim($line);
}
}
if (!empty($logoutLines)) {
echo " ✅ Logout-Routes gefunden:\n";
foreach ($logoutLines as $line) {
echo " 📋 $line\n";
}
} else {
echo " ❌ Keine Logout-Routes gefunden\n";
}
} else {
echo " ❌ Routes-Datei nicht gefunden\n";
}
// 3. LoginController prüfen
echo "\n3. 🔐 LoginController prüfen...\n";
$controllerPath = 'app/Http/Controllers/Auth/LoginController.php';
if (file_exists($controllerPath)) {
$content = file_get_contents($controllerPath);
if (strpos($content, 'logout') !== false) {
echo " ✅ Logout-Methode gefunden\n";
// Zeige Logout-Methode
$lines = explode("\n", $content);
foreach ($lines as $lineNumber => $line) {
if (strpos($line, 'logout') !== false) {
echo " 📋 Zeile " . ($lineNumber + 1) . ": " . trim($line) . "\n";
}
}
} else {
echo " ❌ Logout-Methode nicht gefunden\n";
}
} else {
echo " ❌ LoginController nicht gefunden\n";
}
// 4. Laravel Route-Liste generieren
echo "\n4. 🛣️ Laravel Route-Liste generieren...\n";
try {
require_once 'vendor/autoload.php';
// Laravel Bootstrap
$app = require_once 'bootstrap/app.php';
$app->make('Illuminate\Contracts\Console\Kernel')->bootstrap();
// Route-Liste abrufen
$routes = \Illuminate\Support\Facades\Route::getRoutes();
$logoutRoutes = [];
foreach ($routes as $route) {
$uri = $route->uri();
$methods = $route->methods();
$name = $route->getName();
if (strpos($uri, 'logout') !== false || strpos($name, 'logout') !== false) {
$logoutRoutes[] = [
'uri' => $uri,
'methods' => $methods,
'name' => $name
];
}
}
if (empty($logoutRoutes)) {
echo " ❌ Keine Logout-Routes in Laravel registriert\n";
} else {
echo " ✅ Logout-Routes in Laravel gefunden:\n";
foreach ($logoutRoutes as $route) {
$methods = implode('|', $route['methods']);
$name = $route['name'] ?: 'kein Name';
echo " 📋 $methods $uri ($name)\n";
}
}
} catch (Exception $e) {
echo " ❌ Fehler beim Abrufen der Routes: " . $e->getMessage() . "\n";
}
// 5. Cache-Status prüfen
echo "\n5. 🧹 Cache-Status prüfen...\n";
$cacheFiles = [
'bootstrap/cache/packages.php' => 'Packages Cache',
'bootstrap/cache/services.php' => 'Services Cache',
'bootstrap/cache/routes.php' => 'Routes Cache',
'bootstrap/cache/config.php' => 'Config Cache'
];
foreach ($cacheFiles as $cacheFile => $description) {
if (file_exists($cacheFile)) {
echo " ⚠️ Cache vorhanden: $description\n";
} else {
echo " ✅ Cache geleert: $description\n";
}
}
// 6. Test-Logout-URLs generieren
echo "\n6. 🔗 Test-Logout-URLs:\n";
$testUrls = [
'https://neonail.vogt.de.com/logout',
'https://neonail.vogt.de.com/logout (POST)',
'https://neonail.vogt.de.com/logout (GET)',
'https://neonail.vogt.de.com/',
'https://neonail.vogt.de.com/login'
];
foreach ($testUrls as $url) {
echo " 🔗 $url\n";
}
// 7. Layout korrigieren (falls nötig)
echo "\n7. 🔧 Layout korrigieren...\n";
$layoutPath = 'resources/views/layouts/app.blade.php';
if (file_exists($layoutPath)) {
$content = file_get_contents($layoutPath);
// Ersetze alle hardcodierten Logout-URLs
$replacements = [
'action="https://neonail.vogt.de.com/logout"' => 'action="{{ route("logout") }}"',
'href="https://neonail.vogt.de.com/logout"' => 'href="{{ route("logout") }}"',
'action="http://neonail.vogt.de.com/logout"' => 'action="{{ route("logout") }}"',
'href="http://neonail.vogt.de.com/logout"' => 'href="{{ route("logout") }}"'
];
$modified = false;
foreach ($replacements as $old => $new) {
if (strpos($content, $old) !== false) {
$content = str_replace($old, $new, $content);
$modified = true;
echo " ✅ Ersetzt: $old$new\n";
}
}
if ($modified) {
file_put_contents($layoutPath, $content);
echo " ✅ Layout aktualisiert\n";
} else {
echo " Keine Änderungen nötig\n";
}
} else {
echo " ❌ Layout-Datei nicht gefunden\n";
}
// 8. Cache leeren
echo "\n8. 🧹 Cache leeren...\n";
system('php artisan cache:clear 2>/dev/null || echo " ⚠️ cache:clear übersprungen"');
system('php artisan config:clear 2>/dev/null || echo " ⚠️ config:clear übersprungen"');
system('php artisan view:clear 2>/dev/null || echo " ⚠️ view:clear übersprungen"');
system('php artisan route:clear 2>/dev/null || echo " ⚠️ route:clear übersprungen"');
echo " ✅ Cache geleert\n";
echo "\n✅ Logout-Debug abgeschlossen!\n";
echo "🔗 Testen Sie jetzt:\n";
echo "1. Klicken Sie auf Ihren Benutzernamen (oben rechts)\n";
echo "2. Wählen Sie 'Abmelden' aus dem Dropdown\n";
echo "3. Falls das nicht funktioniert, versuchen Sie direkt:\n";
echo " - https://neonail.vogt.de.com/logout\n";
echo "\n📋 Falls Problem besteht:\n";
echo "- Prüfen Sie Browser-Entwicklertools (F12) für Fehler\n";
echo "- Schauen Sie in die Laravel-Logs: tail -f storage/logs/laravel.log\n";
echo "- Teilen Sie die Debug-Ausgabe mit\n";
?>