Was sind Logfiles und warum sind sie wichtig?
Logfiles (Protokolldateien) sind das digitale Gedächtnis Ihres Webservers. Sie zeichnen jeden Zugriff, jeden Fehler und jedes sicherheitsrelevante Ereignis auf. Für Webseitenbetreiber, Entwickler und Administratoren sind sie ein unverzichtbares Werkzeug zur Fehleranalyse, Sicherheitsüberwachung und Performance-Optimierung.
Typische Anwendungsfälle für Logfile-Analysen:
- Fehlersuche: Warum zeigt meine Webseite einen 500-Error? Welches Script verursacht Probleme?
- Sicherheitsanalyse: Gab es Angriffsversuche auf meine Webseite? Welche IPs versuchen sich unberechtigt Zugriff zu verschaffen?
- Performance-Optimierung: Welche Seiten werden am häufigsten aufgerufen? Gibt es Ressourcen, die besonders langsam laden?
- Debugging: PHP-Fehler, fehlgeschlagene Datenbankverbindungen oder Konfigurationsprobleme identifizieren
- Besucheranalyse: Woher kommen meine Besucher? Welche Bots crawlen meine Seite?
Verfügbare Log-Typen
Auf Ihrem SpeedIT-Hosting stehen Ihnen verschiedene Logfile-Typen zur Verfügung, die jeweils unterschiedliche Informationen protokollieren:
| Log-Typ | Inhalt | Typische Anwendung |
|---|---|---|
| access.log | Alle HTTP-Anfragen an Ihre Webseite | Besucheranalyse, Traffic-Überwachung, Bot-Erkennung |
| error.log | Fehlermeldungen des Webservers und PHP | Fehlersuche, Debugging, Sicherheitsanalyse |
Speicherort der Logfiles
Ihre Logfiles befinden sich in einem dedizierten Verzeichnis auf dem Server. Der genaue Pfad lautet:
/home/users/IHR-BENUTZERNAME/logs/ihre-domain.de/
Die Logs sind zur besseren Übersichtlichkeit nach Domainnamen sortiert. Wenn Sie mehrere Domains in Ihrem Hosting-Paket betreiben, finden Sie für jede Domain einen eigenen Unterordner.
Struktur der Log-Verzeichnisse:
/home/users/IHR-BENUTZERNAME/
└── logs/
├── ihre-domain.de/
│ ├── access.log
│ ├── error.log
├── zweite-domain.de/
│ ├── access.log
│ ├── error.log
└── ...
Logfiles auslesen – Ihre Möglichkeiten
Sie haben mehrere Möglichkeiten, auf Ihre Logfiles zuzugreifen:
Methode 1: Über den KeyHelp Datei-Manager
Der einfachste Weg für gelegentliche Einsicht:
- Melden Sie sich im Webserver an
- Navigieren Sie zu Allgemein → Datei-Manager
- Wechseln Sie in das Ober-Verzeichnis über den Pfeil mit den 3 Punkten und anschließend auf
logs - Wählen Sie die gewünschte Domain und öffnen Sie die Log-Datei
Tipp: Im Datei-Manager können Sie Dateien direkt ansehen, herunterladen oder mit dem integrierten Editor öffnen.
Methode 2: Per FTP/SFTP
Ideal zum Herunterladen größerer Log-Dateien für lokale Analyse:
- Verbinden Sie sich mit einem FTP-Client (z.B. FileZilla) mit Ihrem Server
- Navigieren Sie zum Verzeichnis
logs(direkt im Home-Verzeichnis) - Wählen Sie die Domain und laden Sie die gewünschten Dateien herunter
Empfohlene Einstellungen für SFTP:
| Einstellung | Wert |
|---|---|
| Protokoll | SFTP (SSH File Transfer Protocol) |
| Server | Ihr Servername (z.B. merkur.web.de-serv.de) |
| Port | 22 |
| Benutzername | Ihr FTP-Benutzername |
Methode 3: Per SSH (für fortgeschrittene Nutzer)
Die mächtigste Methode für Echtzeit-Analyse und Filterung:
- Verbinden Sie sich per SSH mit Ihrem Server
- Navigieren Sie zum Log-Verzeichnis:
cd ~/logs/ihre-domain.de/ - Nutzen Sie Linux-Befehle zur Analyse (siehe Abschnitt unten)
Logfiles analysieren – Nützliche SSH-Befehle
Mit SSH-Zugang können Sie Logs effizient durchsuchen und filtern. Hier sind die wichtigsten Befehle:
Grundlegende Befehle
| Befehl | Funktion |
|---|---|
cat error.log |
Gesamte Datei anzeigen |
tail -100 error.log |
Die letzten 100 Zeilen anzeigen |
tail -f error.log |
Echtzeit-Ausgabe (Live-Monitoring) |
head -50 access.log |
Die ersten 50 Zeilen anzeigen |
less error.log |
Datei seitenweise durchblättern (mit q beenden) |
wc -l access.log |
Anzahl der Zeilen (Anfragen) zählen |
Logs durchsuchen und filtern
# Nach einem bestimmten Begriff suchen
grep "500" error.log
# Nach einer IP-Adresse suchen
grep "192.168.1.100" access.log
# Fehler eines bestimmten Datums finden
grep "19/Dec/2025" error.log
# ModSecurity-Blockierungen finden
grep "ModSecurity" error.log
# PHP Fatal Errors finden
grep "Fatal error" error.log
# Alle 404-Fehler anzeigen
grep '" 404 ' access.log
Erweiterte Analysen
# Top 10 IP-Adressen nach Anzahl der Anfragen
awk '{print $1}' access.log | sort | uniq -c | sort -rn | head -10
# Top 10 aufgerufene URLs
awk '{print $7}' access.log | sort | uniq -c | sort -rn | head -10
# Alle 500er-Fehler mit Zeitstempel
grep '" 500 ' access.log | awk '{print $1, $4, $7}'
# Anfragen pro Stunde zählen
awk '{print $4}' access.log | cut -d: -f2 | sort | uniq -c
# Nur Fehler der letzten Stunde (ungefähr)
tail -1000 error.log | grep "$(date +%H:)"
Logfiles verstehen – Aufbau und Interpretation
Access-Log Format
Ein typischer Eintrag im Access-Log sieht so aus:
192.168.1.100 - - [19/Dec/2025:14:23:45 +0100] "GET /seite.html HTTP/1.1" 200 4523 "https://google.de" "Mozilla/5.0..."
| Bestandteil | Bedeutung | Beispiel |
|---|---|---|
| IP-Adresse | IP des Besuchers | 192.168.1.100 |
| Zeitstempel | Datum und Uhrzeit der Anfrage | [19/Dec/2025:14:23:45 +0100] |
| Anfrage | HTTP-Methode und aufgerufener Pfad | "GET /seite.html HTTP/1.1" |
| Statuscode | HTTP-Antwortcode des Servers | 200 (OK) |
| Größe | Übertragene Bytes | 4523 |
| Referer | Woher kam der Besucher? | "https://google.de" |
| User-Agent | Browser/Bot-Identifikation | "Mozilla/5.0..." |
Wichtige HTTP-Statuscodes
| Code | Bedeutung | Handlungsbedarf |
|---|---|---|
| 200 | OK – Anfrage erfolgreich | Keiner |
| 301/302 | Weiterleitung (permanent/temporär) | Prüfen, ob gewollt |
| 403 | Zugriff verweigert | Berechtigungen prüfen |
| 404 | Seite nicht gefunden | Fehlerhafte Links korrigieren |
| 500 | Interner Serverfehler | Error-Log prüfen! |
| 502/503 | Gateway/Service nicht verfügbar | PHP-Prozesse oder Backend prüfen |
Error-Log Einträge verstehen
Error-Logs enthalten detailliertere Informationen über Probleme:
[Fri Dec 19 14:30:22.123456 2025] [php:error] [pid 12345] [client 192.168.1.100:54321] PHP Fatal error: Uncaught Error: Call to undefined function xyz() in /www/script.php:42
| Bestandteil | Bedeutung |
|---|---|
| Zeitstempel | Wann der Fehler auftrat |
| Modul | Welche Komponente den Fehler meldet (z.B. php, security2) |
| Schweregrad | error, warning, notice |
| Client-IP | Welche IP die Anfrage stellte |
| Fehlermeldung | Detaillierte Beschreibung des Problems |
| Datei und Zeile | Wo genau der Fehler auftrat |
Log-Rotation und Aufbewahrung
Um Speicherplatz zu sparen und die Übersichtlichkeit zu wahren, werden Logfiles automatisch rotiert:
- Aktuelle Logs:
access.log,error.log– enthalten die aktuellen Einträge - Archivierte Logs:
access.log.1,access.log.2.gzusw. – ältere Logs, teilweise komprimiert - Aufbewahrungsdauer: Logfiles werden in der Regel 4-8 Wochen aufbewahrt
Tipp: Wenn Sie ältere Logs benötigen, laden Sie diese regelmäßig herunter und archivieren Sie sie lokal.
Praktische Anwendungsbeispiele
Beispiel 1: 500-Error debuggen
Ihre Webseite zeigt einen 500-Fehler. So gehen Sie vor:
- Öffnen Sie das Error-Log:
tail -100 error.log - Suchen Sie nach PHP-Fehlern:
grep "Fatal error\|Parse error" error.log - Notieren Sie die betroffene Datei und Zeile
- Beheben Sie den Fehler im Code
Beispiel 2: Angriffsversuche erkennen
Sie vermuten Angriffsversuche auf Ihre Seite:
- ModSecurity-Blockierungen prüfen:
grep "ModSecurity" error.log - Verdächtige IPs identifizieren:
awk '{print $1}' access.log | sort | uniq -c | sort -rn | head -20 - Anfragen einer verdächtigen IP analysieren:
grep "VERDÄCHTIGE-IP" access.log
Beispiel 3: 404-Fehler für SEO bereinigen
Fehlerhafte Links schaden Ihrem SEO-Ranking:
- Alle 404-Fehler auflisten:
grep '" 404 ' access.log | awk '{print $7}' | sort | uniq -c | sort -rn - Prüfen Sie, ob diese URLs existieren sollten
- Erstellen Sie Weiterleitungen oder korrigieren Sie die Links
Verwandte Artikel
- ModSecurity – Ihr Schutzschild gegen Cyberangriffe
- Server nicht erreichbar / IP-Sperre
- 500 Internal Server Error beheben
- 404 Not Found – Seite nicht gefunden
Sie benötigen Hilfe?
Falls Sie bei der Log-Analyse Unterstützung benötigen oder einen Fehler nicht selbst beheben können, kontaktieren Sie unseren Support. Geben Sie dabei möglichst die relevanten Log-Einträge an – das beschleunigt die Fehlersuche erheblich.