Neues SEO Tool: Bugs & Feature Request

  • Hey zusammen,

    seit dem Launch von Search-Console.PRO habe ich schon einiges an Feedback bekommen – vielen Dank dafür! Um das Ganze etwas zu strukturieren, mache ich hier einen offiziellen Thread für Bug-Reports und Feature-Requests auf.

    Was ist Search-Console.PRO?

    Kurz für alle, die es noch nicht kennen: Search-Console.PRO ist ein Tool, das die Google Search Console erweitert. Die wichtigsten Features:

    • Unbegrenzte Datenspeicherung (statt 16 Monate bei Google)
    • Bulk-Indexierung (mehrere URLs gleichzeitig einreichen)
    • URL Inspection via API (Bulk-Prüfung möglich)
    • Multi-Property Dashboard (alle Websites zentral)
    • SCI – Search Console Index (eigener Sichtbarkeitsindex, Beta)
    • Automatische Alerts bei Performance-Einbrüchen
    • White-Label Reports (PDF/Excel)

    Links:


    Bekannte Bugs / In Arbeit

    Hier liste ich bekannte Probleme, an denen ich bereits arbeite:

    BugStatusUpdate
    Session funktioniert manchmal nichtgefixt11.01.2026
    Dropdown mobile falschgefixt 11.01.2026

    (Liste wird aktualisiert)


    So meldest du einen Bug

    Damit ich den Fehler schnell finden kann, bitte folgende Infos mitliefern:

    1. Was ist passiert? (Fehlermeldung, unerwartetes Verhalten)
    2. Was hast du erwartet?
    3. Welche Seite/Funktion betrifft es?
    4. Browser + Version (Chrome 120, Firefox 121, Safari 17, etc.)
    5. Screenshot (falls möglich)
    6. Reproduzierbar? (Passiert es jedes Mal oder nur manchmal?)

    Beispiel:

    Code
    Bug: Export-Button funktioniert nicht
    Erwartet: CSV-Download startet
    Seite: Performance > Queries
    Browser: Chrome 120 auf Windows 11
    Reproduzierbar: Ja, bei jeder Property
    Screenshot: [Bild]

    wenn etwas möglich erscheint mach ich das, wenn das nicht klappt gehts ans unmögliche und ansonsten das undenkbare.

    - nun stolz rauchfrei - Ich denke also Bing ich!

    Support 24h Bereitschaft 0173 6107465 - NUR Für Kunden von SEO NW!

  • So einen Feature Request habe ich schon.

    Wenn die Property mit den Seiten abgefragt wird, kann man diese sofort indizieren. Das geht auch Bulk bis zu 200 (2*100). Allerdings wäre es schön, wenn etwas per Robots.txt blockiert wird, das so etwas filterbar sein könnte. So hat man eine einfachere Übersicht und nimmt zB nur Seiten, welche zB gefunden und nicht indiziert sind.

    Kommt in der nächsten Version rein.

    wenn etwas möglich erscheint mach ich das, wenn das nicht klappt gehts ans unmögliche und ansonsten das undenkbare.

    - nun stolz rauchfrei - Ich denke also Bing ich!

    Support 24h Bereitschaft 0173 6107465 - NUR Für Kunden von SEO NW!

  • ich finde das www. vor main domain irgendwie antiquiert.

    ok. das mache ich eigentlich auch nicht mehr. Ist mir so durchgerutscht.

    So es gibt Neuigkeiten:

    Mobile funktioniert das ganze nun auch. Diese Woche werde ich das Light Theme erstellen. Das war etwas, was angefragt worden ist. Es ist schon länger in der Entwicklung, hatte allerdings keine Priorität bisher. Es wurde allerdings schon mehrfach angefragt, was ich zwar nicht verstehen kann, aber ist nun in der Prio für diese Woche ganz oben.

    Was auch gemacht worden ist letzten späten Abend:

    • Nun ist es möglich bei "Querys" direkt Keywords ins Monitoring aufzunehmen. Das war ein Feature, welche sich mehrere gewünscht hatten. War einfach umzusetzen.
    • Die Bulk Indizierung kommt ohne Indexing Api von Client Seite aus. Das funktionierte schon, das Bulk Tool habe ich nur etwas angepasst, und ihr könnt nun bis zu 200 Seiten melden bei Google pro Tag. Am besten ist es allerdings über den URL Manager Inspector, da ihr das mit eurer Sitemap vergleichen könnt, was drin ist und was eben nicht
    • Die Einreichung bei der Indizierung wird nun angezeigt, also das was ihr wann gemeldet habt
    • Ihr könnt nun beim URL Inspektor filtern nach Coverage Status. zB Filtert nach "gefunden - nicht indiziert" und klickt es Bulk an und lasst es indizieren nach diesem Status.

    Es wird langsam.

    Mobile habe ich einfach das Burger Menue verbessert und ein paar Media Querys reingemacht. Das sollte nun auch auf dem Smartphone funktionieren.

    wenn etwas möglich erscheint mach ich das, wenn das nicht klappt gehts ans unmögliche und ansonsten das undenkbare.

    - nun stolz rauchfrei - Ich denke also Bing ich!

    Support 24h Bereitschaft 0173 6107465 - NUR Für Kunden von SEO NW!

  • Todo: Weil viele am Anfang nicht klarkommen und Fragen hatten, werde ich kleine Videos erstellen. Da erkläre ich dann das Tool nochmals ausführlich.

    Allerdings: Egal ob Kunde (Free Account) oder jemand der das Tool bucht. Es wird immer Support und persönliche Einweisung geben.

    Hab gestern noch bis knapp 21h supportet. Auch sind mir bestimmte Sachen aufgefallen, die man vereinfachen könnte. zB eine geführte Einrichtung. Das kann allerdings diese Woche nicht mehr umgesetzt werden, das ist einfach zuviel Arbeit - Zeit, die ich nun einteilen muss. Ich denke aber nächste Woche habe ich das soweit mit einem Guided Property Installer, inkl Sitemap, empfohlenen Einstellungen usw.. Das ist ein Feature, etwas aufwändiger, aber für welche die das Tool nicht kennen, einfach wichtig.

    Es kommen immer die gleichen Fragen :) und Einstellungsprobleme.

    wenn etwas möglich erscheint mach ich das, wenn das nicht klappt gehts ans unmögliche und ansonsten das undenkbare.

    - nun stolz rauchfrei - Ich denke also Bing ich!

    Support 24h Bereitschaft 0173 6107465 - NUR Für Kunden von SEO NW!

  • Behobene Bugs

    1. Property-Dropdown auf Mobile nicht auswählbar

    Problem: Auf Android (und iOS) konnte das Property-Dropdown im Dashboard nicht bedient werden.

    Lösung: Auf mobilen Geräten wird jetzt ein natives <select>-Element angezeigt, das den Standard-Picker des Betriebssystems nutzt. Auf Desktop bleibt das gewohnte Custom-Dropdown mit Suchfunktion erhalten.

    2. Letzte Property wird nach Logout nicht gemerkt

    Problem: Nach dem Ausloggen und erneutem Einloggen wurde immer die erste Property (alphabetisch) angezeigt statt der zuletzt verwendeten.

    Lösung: Die ausgewählte Property wird jetzt zusätzlich in einem Cookie gespeichert (1 Jahr gültig). Nach dem Login wird automatisch die zuletzt verwendete Property geladen.

    3. "Eingeloggt bleiben" funktionierte nicht richtig

    Problem: Trotz aktivierter Checkbox wurde man nach wenigen Stunden ausgeloggt.

    Ursache: Die PHP Session-Einstellungen (gc_maxlifetime) wurden nicht korrekt gesetzt, wodurch der Server die Session-Daten vorzeitig löschte.

    Lösung:

    • Session-Lifetime wird jetzt korrekt auf 30 Tage gesetzt wenn "Eingeloggt bleiben" aktiviert ist
    • Separates Remember-Me Cookie steuert die Verlängerung
    • Beim Logout wird das Cookie ordnungsgemäß gelöscht

    4. Burgermenü nicht schließbar durch erneuten Klick

    Problem: Das mobile Menü ließ sich nur über das X oder den Overlay schließen, nicht durch erneutes Klicken auf den Burger-Button.

    Lösung: Der Burger-Button funktioniert jetzt als Toggle - ein Klick öffnet das Menü, ein erneuter Klick schließt es.

    Allgemeine Mobile-Verbesserungen

    Zusätzlich zu den Bugfixes wurde das gesamte Tool für mobile Geräte optimiert:

    • Responsive Design für alle Seiten
    • Touch-optimierte Bedienelemente (min. 44px Tap-Targets)
    • Horizontales Scrollen für Tabellen
    • Angepasste Layouts für verschiedene Bildschirmgrößen

    wenn etwas möglich erscheint mach ich das, wenn das nicht klappt gehts ans unmögliche und ansonsten das undenkbare.

    - nun stolz rauchfrei - Ich denke also Bing ich!

    Support 24h Bereitschaft 0173 6107465 - NUR Für Kunden von SEO NW!

  • "Es wurde allerdings schon mehrfach angefragt, was ich zwar nicht verstehen kann"

    Weil es meiner Meinung nach etwas Wichtiges ist, gerade für solche technische Seiten. Wenn ich selbst auf einer Seite aufschlage, die meine Wünsche ignoriert, dann bin ich weg.

    Meine Silvester-Seite würde ohne nicht funktionieren. 50% der User kommen mit Voreinstellungen, die ich respektieren muss.

    Ich wünsche euch alles Gute.

  • "Ursache: Die PHP Session-Einstellungen (gc_maxlifetime) wurden nicht korrekt gesetzt, wodurch der Server die Session-Daten vorzeitig löschte."

    Das sehe ich nicht so, den maxlifetime beeinflusste alle Cookies.

    "Eingeloggt bleiben" erfordert zwei extra Cookies. Einmal für den Login selbst und die Uhrzeit, also die Einwilligung, dass der User das möchte. Dieses Cookie, nur dieses, hat eine sehr lange Laufzeit! 3-4 Jahre.

    Das zweite Cookie beinhaltet die Logindaten. Aber nicht die echten Zugangsdaten, sondern anonymisierte, die mit jedem Zugriffsversuch / Klick auf einen Link geändert werden. 3-12 Monate. Startet ja mit jedem "Klick" neu.

    Jeder Klick erzeugt neue anonymisierte Daten. Werden in der Datenbank gespeichert und setzen ein neues Login-Cookie mit den "Zugangsdaten".. Nur die Kombination aus beiden Cookies ist gültig. Klaut einer die Daten, dann ist er je nach Einstellung der maxlifetime raus, also nach z.B. zwei Stunden. Oder früher, wenn der eigentliche Kunde das System nutzte und durch einen Klick die anonymen Zugangsdaten geändert wurden.

    Wenn das nicht passiert, könnte jeder die Session übernehmen, der zufällig, wie auch immer, an die Cookies kommt!

    Der Wunsch "eingeloggt bleiben" ist kein Wunsch von Deinem Server, sondern ein privater Wunsch vom Kunden. Also muss dieser Wunsch auch privat beim Kunden hinterlegt werden. Ist auch Thema der DSE. Cookie setzen wegen 6/Abs1/b DSGVO.

    Ich wünsche euch alles Gute.

    2 Mal editiert, zuletzt von Synonym (17. Januar 2026 um 13:01)

  • jar. Wird nächste Woche gemacht.. Scheinst aber auch nicht angemeldet zu sein. Wird alles und auch noch mehr: Nächste Woche. Brauch(t)e ne kurze Auszeit.

    wenn etwas möglich erscheint mach ich das, wenn das nicht klappt gehts ans unmögliche und ansonsten das undenkbare.

    - nun stolz rauchfrei - Ich denke also Bing ich!

    Support 24h Bereitschaft 0173 6107465 - NUR Für Kunden von SEO NW!

  • Search-Console.PRO — Changelog


    Version 1.5.0 — 06. Februar 2026

    🆕 NEU: Onpage SEO Crawler

    Kompletter serverseitiger Website-Crawler mit Live-Fortschritt, umfassender Analyse und PDF-Reporting.

    Crawl-Engine

    • Serverseitiger PHP-Crawler mit cURL und Queue-System in der Datenbank
    • Crawlt bis zu 1.000 Seiten pro Job
    • Über 40 SEO-, Technik- und Content-Checks pro Seite
    • robots.txt wird vollständig geparst und beachtet (Wildcard- und $-Support)
    • Konfigurierbar: Max. Seitenanzahl, Crawl-Tiefe, Bildanalyse, externe Links, robots.txt
    • Intelligentes URL-Handling mit Normalisierung, Fragment-Entfernung und Duplikat-Erkennung
    • Überspringt automatisch Binärdateien (PDFs, Bilder, Archive — über 40 Dateitypen)

    Background Worker & Globale Queue

    • Crawl läuft komplett im Hintergrund per Cron-Job — Browser kann geschlossen werden
    • Report steht nach Abschluss bereit, auch wenn der Nutzer offline ist
    • Globale Queue: Nur ein Crawl gleichzeitig (FIFO-Reihenfolge)
    • Lockfile-Mechanismus verhindert parallele Worker-Instanzen
    • Queue-Position wird in der Fortschrittsanzeige angezeigt
    • Max. 5 Minuten Laufzeit pro Worker-Aufruf, setzt beim nächsten Cron nahtlos fort

    Live-Fortschrittsanzeige

    • Animierter Fortschrittsbalken mit Shimmer-Effekt
    • Echtzeit-Counter: Gecrawlt, in Queue, Fehler, Warnungen
    • Hinweis: „Sie können diese Seite verlassen — der Report steht nach Abschluss bereit"
    • Abbrechen-Button für laufende Crawls
    • Queue-Position bei wartenden Jobs (gelber Balken)

    Ergebnis-Dashboard mit 7 Tabs

    • Issues — Alle Issues gruppiert nach Typ, klickbar mit expandierbaren Detail-Rows
    • Inhalt — Content-Issues: Title-Länge, Meta Description, H1-Duplikate, Thin Content
    • SEO — Canonical, Noindex, defekte Links, Orphan Pages, URL-Probleme
    • Technik & Performance — Antwortzeiten-Verteilung, HTTP-Status-Übersicht, Kompression
    • Bilder — Alt-Texte, Dateigröße, Dimensionen, moderne Formate (WebP/AVIF)
    • Alle Seiten — Paginierte Tabelle aller gecrawlten Seiten, sortier- und filterbar
    • Document Outline — Überschriften-Hierarchie (H1–H6) als visueller Baum pro Seite

    Issue-Details mit Quell-URLs

    • Jedes Issue zeigt die betroffenen URLs als klickbare Links
    • Bei defekten Links: Quell-Seite → Ziel-URL mit HTTP-Statuscode
    • Detail-Informationen je nach Typ: Zeichenlänge, Wortanzahl, Ladezeit, Tiefe, Duplikat-Wert
    • Funktioniert in allen Tabs (Issues, Inhalt, SEO, Technik, Bilder)

    Document Outline

    • Zeigt H1–H6 Hierarchie als eingerückten, farbkodierten Baum
    • Erkennt Fehler: Ebenen-Sprünge (H1→H3), erste Überschrift kein H1, mehrfache H1
    • Filter-Buttons: Alle Seiten / Nur Fehler / Nur OK
    • Summary-Banner mit Gesamt-, Fehler- und OK-Zähler
    • Fehlerhafte Heading-Zeilen werden rot hinterlegt

    Score-System

    • 4 Scores: Gesamt, Inhalt (30%), SEO (40%), Technik (30%)
    • Prozentbasierte Berechnung auf Basis betroffener Seiten
    • Jeder Issue-Typ hat ein individuelles Gewicht
    • Separate Penalty für HTTP 4xx/5xx Fehlerseiten

    Geprüfte Issue-Typen (Auswahl)

    • Content: Fehlender/zu langer/zu kurzer Title, fehlende/doppelte Meta Description, fehlende/mehrfache H1, Thin Content, fehlende Open Graph Tags
    • SEO: Fehlender Canonical, Canonical-Mismatch, Noindex, defekte interne/externe Links, Orphan Pages, tiefe Seiten (>4 Klicks), URL zu lang/Großbuchstaben
    • Technik: HTTP 4xx/5xx, langsame Antwortzeit (>1s), langsamer TTFB (>600ms), große Seiten (>500KB), fehlende Kompression, kein Viewport
    • Bilder: Fehlende Alt-Texte, zu große Bilder (>200KB), fehlende Dimensionen (CLS-Risiko), kein modernes Format
    • Heading Outline: Ebenen-Sprung, erste Überschrift kein H1, flache Struktur

    PDF-Report

    • Professioneller A4-Report mit allen Scores, Quick Stats und HTTP-Status-Verteilung
    • Issues nach Kategorie mit farbiger Seitenleiste je Severity
    • Betroffene URLs unter jedem Issue aufgelistet (max. 20 pro Typ)
    • Bei defekten Links: Quell-Seite → Ziel mit HTTP-Status
    • Korrekter Domain-Name (auch bei sc-domain: Format)
    • Footer mit Branding und Kontaktdaten

    Menü-Integration

    • Neuer Menüpunkt „Onpage Crawler" mit Badge „Neu"
    • Untermenü: Crawler starten

    Bisherige Crawls

    • Übersichtstabelle mit Domain-Name, Datum, Seitenanzahl, Score, Fehlerzahl, Status
    • Aktionen: Ansehen, PDF herunterladen, Löschen

    Version 1.4.0 — 06. Februar 2026

    🔧 CSV-Export: Property-Sicherheit

    • Export validiert jetzt Property-Zugehörigkeit und aktives Abonnement
    • Fehler behoben: Export-Script hat gültige Property-IDs abgelehnt (fehlender Parameter in URL)

    Version 1.3.0 — 06. Februar 2026

    📊 Performance Analytics: Vergleichsmodus

    Keyword-Detail-Vergleich

    • Neuer Vergleichsmodus in der Keyword-Detailansicht
    • KPI-Änderungsindikatoren (Pfeile mit prozentualer Änderung)
    • Chart.js-Integration mit gestrichelten Overlay-Linien für den Vergleichszeitraum
    • Vergleichsdaten werden per AJAX nachgeladen

    Performance-Charts

    • 4-Metrik-Vergleichscharts mit zeitbasierter Filterung
    • Vergleichszeitraum wird als gestrichelte Linie überlagert
    • Verbesserte Achsenbeschriftungen und Tooltip-Formatierung

    Version 1.2.0 — 06. Februar 2026

    🔍 Keyword Discovery: Filter & Schwellenwerte

    • SQL-Platzhalter für INTERVAL-Filterung korrigiert
    • Dynamische Schwellenwerte für kleine Websites (angepasste Grenzwerte bei wenig Daten)
    • Tab-Styling überarbeitet (aktiver Tab visuell hervorgehoben)
    • Zeitbasierte Filter funktionieren jetzt korrekt (7, 14, 28, 90 Tage)

    Version 1.1.0 — 06. Februar 2026

    🔐 Passwort-Reset

    • Sicheres Passwort-Zurücksetzen implementiert
    • Token-basiert mit Ablaufzeit
    • E-Mail-Versand mit Reset-Link
    • Design konsistent mit dem Login-Bereich
    • Brute-Force-Schutz durch Rate Limiting

    Version 1.0.4 — 11. Januar 2026

    📱 Mobile Optimierung & SCI-Verbesserungen

    Mobile Fixes

    • Property-Dropdown auf Android jetzt bedienbar (natives Select-Element auf Touch-Geräten)
    • Burger-Menü lässt sich durch erneuten Klick wieder schließen
    • Letzte Property-Auswahl wird per Cookie gespeichert (überlebt Logout)

    Remember Me

    • Session-Management komplett überarbeitet
    • Cookies und Session-Lifetimes werden korrekt vor session_start() gesetzt

    SCI-Index Anzeige

    • Prozentuale Änderungen werden jetzt sauber formatiert (keine 12-stelligen Dezimalzahlen mehr)
    • Vergleich mit Werten von genau 7 Tagen zuvor (statt letztem Eintrag)
    • Neue Methode getComponentChanges() zeigt echte Woche-über-Woche-Änderungen
    • Korrektur: Angezeigte Werte sind jetzt tatsächliche Änderungen, nicht Beitrags-Prozente

    SCI-History Dashboard

    • Haupt-SCI-Trendchart
    • Komponenten-Chart mit umschaltbaren Linien (Impressions, Klicks, CTR, Position, Diversität, Trend)
    • Periodenvergleich: Aktuelle 28 Tage vs. vorherige 28 Tage mit echten Performance-Daten

    Lokale Ressourcen

    • Favicons werden lokal gecacht (Proxy-System mit Fallback-Icon)
    • Google Fonts durch lokale Font-Dateien ersetzt (Inter Font-Family)
    • Keine externen Abhängigkeiten mehr im Frontend

    Version 1.0.3 — 10. Januar 2026

    📝 Marketing & Content Launch


    Version 1.0.2 — 08. Januar 2026

    🌐 Website Launch (search-console.pro)


    Version 1.0.1 — 08. Januar 2026

    📄 Pressemitteilung & Firmenportrait


    Version 1.0.0 — Launch

    🚀 Erstveröffentlichung

    • Unbegrenzte Datenspeicherung aus Google Search Console
    • Täglicher Sync (Klicks, Impressions, CTR, Position)
    • Historischer Import aller 16 Monate von Google
    • Multi-Property Management
    • SCI Index (6 Faktoren: Impressions 25%, Klicks 25%, CTR 15%, Position 20%, Keyword-Diversität 10%, Trend 5%)
    • URL Inspection & One-Click Indexierung via Google API
    • Bulk-Indexierung
    • Automatische Alerts
    • REST-API (ab Agency-Plan)
    • Preise: Starter 10€, Pro 30€, Agency 65€, Business 119€

    wenn etwas möglich erscheint mach ich das, wenn das nicht klappt gehts ans unmögliche und ansonsten das undenkbare.

    - nun stolz rauchfrei - Ich denke also Bing ich!

    Support 24h Bereitschaft 0173 6107465 - NUR Für Kunden von SEO NW!

  • Version 1.7.0 — 06. Februar 2026

    🐛 Bug-Audit: 12 Bugs behoben + 4 Verbesserungen

    Systematische Code-Prüfung des gesamten Projekts auf Fehler, Inkonsistenzen und Verbesserungspotenzial.

    Kritische Bugs behoben

    • Datenbank-Schema Mismatch behoben: Eine OAuth-Token-Tabelle hatte im Schema einen anderen Namen als im gesamten Anwendungscode — die Google-Verbindung konnte bei Neuinstallationen komplett fehlschlagen.
    • OAuth CSRF-Bypass geschlossen: Die Google-Authentifizierung hat bei ungültigem State-Parameter trotzdem fortgefahren, anstatt abzubrechen. Der CSRF-Schutz greift jetzt zuverlässig.
    • Account-Löschung vervollständigt (DSGVO): Beim Löschen eines Accounts wurden 15 Tabellen nicht berücksichtigt (Crawler-Daten, Keywords, Alerts, Login-Tokens, Agentur-Daten, Passwort-Resets). Sowohl die Self-Service-Löschung als auch die Admin-Löschung wurden korrigiert.

    Crawler-Bugs behoben

    • URL Slash-Ketten behoben: Der Crawler erzeugte fehlerhafte URLs wie /, //, /// bei Websites mit leeren oder ungültigen Links. Ursache: Doppelte Slashes wurden fälschlich als Protocol-Relative URLs interpretiert, und mehrfache Slashes im Pfad wurden nie bereinigt. URLs werden jetzt korrekt normalisiert und ungültige URLs vor dem Eintragen in die Queue abgewiesen.
    • Redirect-Ketten werden jetzt erkannt: Der Issue-Typ „Weiterleitungskette" war definiert, wurde aber nie tatsächlich ausgelöst. Der Crawler verfolgt jetzt Redirect-Hops und meldet Ketten mit mehr als einem Hop.
    • PHP 8.2 Kompatibilität: Eine veraltete Encoding-Funktion wurde an drei Stellen durch eine moderne Variante ersetzt. Verhindert Warnungen in PHP 8.2+.
    • Speicherleck im Crawler behoben: DOM-Objekte werden nach jeder Seitenanalyse explizit freigegeben — verhindert hohen Speicherverbrauch bei großen Crawls.
    • 3 weitere SQL-Injections im Crawler behoben: Interne Zähler-Abfragen verwenden jetzt durchgängig Prepared Statements.

    Weitere Bugs behoben

    • Startseite zeigte Demo-Daten: Die Index-Seite enthielt noch hartcodierte Test-Statistiken statt einer Weiterleitung zum echten Dashboard.
    • Login-Redirect funktioniert jetzt: Nach einem erzwungenen Login wird der Nutzer zur ursprünglich angeforderten Seite weitergeleitet, statt immer zum Dashboard.
    • Division by Zero auf der Upgrade-Seite: Die Preisberechnung konnte bei bestimmten Plan-Konfigurationen crashen.
    • Falsche Tabelle bei Account-Löschung: Ein Tabellenname im Lösch-Vorgang war veraltet und stimmte nicht mit der tatsächlichen Datenbank überein.
    • Debug-Logging in Produktion entfernt: Die Google-Authentifizierung schrieb sensible Session-Daten ins Error-Log. Jetzt nur noch im Debug-Modus aktiv.

    Verbesserungen

    • API Rate-Limiting korrigiert: Durch ein Sampling wurde nur jede 10. Anfrage gezählt — das Limit war effektiv 10× höher als eingestellt. Jeder Request wird jetzt korrekt erfasst.
    • Passwort-Validierung zentralisiert: Die Passwort-Zurücksetzen-Funktion nutzt jetzt die gleiche zentrale Validierung wie die Registrierung. Einheitliche Regeln überall.
    • Daten-Löschung vereinheitlicht: Self-Service und Admin-Löschung verwenden jetzt identische, vollständige Tabellenlisten.

    Version 1.6.0 — 06. Februar 2026

    🔒 Security Audit + Session-Fixes

    Umfassendes Sicherheits-Audit des gesamten Projekts mit 19 Findings und Implementierung aller Fixes. Zusätzlich komplette Überarbeitung des Session- und Remember-Me-Systems.

    Security Audit — 19 Findings gefixt

    • 2× Kritisch: SQL-Injection in einer API behoben (Prepared Statements), SSRF-Schutz im Crawler implementiert (Zugriffe auf interne Netzwerke, Cloud-Metadata-Endpoints und private IP-Bereiche werden blockiert)
    • 5× Hoch: Rate-Limiting für Registrierung (max. 3 pro Stunde/IP), verstärktes Rate-Limiting für Passwort-Reset (max. 5 pro 24h/E-Mail), API Rate-Limiting Middleware für alle Endpoints, fehlende Session-Flags nach Registrierung ergänzt, Debug-Modus in Produktion deaktiviert
    • 7× Mittel: Fehlermeldungen in 5 API-Endpoints bereinigt (keine internen Details mehr sichtbar), CSRF-Schutz auf Registrierung erweitert, Download-Dateinamen gegen Header-Injection geschützt, Cookies mit allen Sicherheits-Flags versehen, Installations-Assistent gegen SQL-Injection geschützt, Passwort-Anforderungen vereinheitlicht, Content-Security-Policy verschärft
    • 5× Niedrig: CLI-Schutz für Hintergrund-Jobs, Zugangsdaten über Umgebungsvariablen konfigurierbar, Installations-Sperre nach erfolgreicher Einrichtung, verbesserte Fehler-Referenzen für Support-Anfragen

    Session-Management komplett überarbeitet

    • Problem gelöst: Automatischer Logout trotz „Angemeldet bleiben"
    • Ursachen identifiziert: Session-Dateien wurden alle 30 Minuten gelöscht, alte Session-IDs nach Erneuerung verworfen, widersprüchliche Cookie-Einstellungen zwischen Konfiguration und Authentifizierung
    • Token-basiertes Remember-Me: Sichere Login-Tokens mit SHA-256 Hashing, automatische Token-Rotation bei jedem Auto-Login, max. 5 Tokens pro Nutzer, 30 Tage Gültigkeit
    • Session-Einstellungen vereinheitlicht: Konsistente Cookie-Konfiguration, verlängerte Sitzungsdauer, saubere Garbage-Collection

    Neue Sicherheits-Features

    • Allgemeines Rate-Limiting System (DB-basiert, konfigurierbare Zeitfenster)
    • Zentrale Passwort-Validierung (min. 8 Zeichen, Groß-/Kleinbuchstabe, Zahl)
    • API Rate-Limiting Middleware für alle Schnittstellen
    • SSRF-Schutz mit DNS-Auflösung und IP-Bereichs-Filterung
    • Request-IDs für Fehler-Korrelation im Log

    wenn etwas möglich erscheint mach ich das, wenn das nicht klappt gehts ans unmögliche und ansonsten das undenkbare.

    - nun stolz rauchfrei - Ich denke also Bing ich!

    Support 24h Bereitschaft 0173 6107465 - NUR Für Kunden von SEO NW!

  • Search-Console.PRO — Changelog


    Version 1.7.1 — 07. Februar 2026

    🐛 Crawler-Hotfixes + CSS-Korrektur

    Behebung kritischer Crawler-Abstürze, die das Crawlen vieler Websites verhindert haben, sowie CSS- und URL-Normalisierungs-Verbesserungen.

    Kritische Bugs behoben

    • Crawler-Absturz behoben (TypeError): Der Crawler stürzte beim Zählen der internen/externen Links ab, wenn ein <a href>-Attribut leer war oder auf #/javascript: verwies. PHP 8.2 meldete: isSameDomain(): Argument must be of type string, null given. Betraf alle Websites und verhinderte das Crawlen nach der ersten Seite.
    • Dot-Segment URLs behoben (/./, /../): Websites mit relativen Links wie href="." oder href="./" erzeugten endlose URL-Ketten (/./, /./../, /./././ usw.). URL-Normalisierung löst jetzt Dot-Segmente gemäß RFC 3986 auf.
    • JSON-LD Structured Data Warnung behoben: Websites mit Array-Werten bei @type (z.B. ["Person", "Organization"]) verursachten wiederholte „Array to string conversion"-Warnungen im Log.

    Verbesserungen

    • CSS für Formularfelder ergänzt: Eingabefelder und Dropdowns im Crawler-Formular (und 58 weiteren Stellen) waren unsichtbar, da die CSS-Klasse form-control nicht definiert war. Betraf Start-URL, Maximale Seiten und alle Formularfelder in Agentur- und Bulk-Bereichen.
    • robots.txt Fehlinterpretation verhindert: Wenn ein Server auf /robots.txt eine HTML-Seite ausliefert (z.B. durch Soft-404-Redirect), wird diese jetzt ignoriert statt als Regelwerk geparst.
    • Crawler Debug-Logging: Bei aktiviertem DEBUG_MODE werden jetzt übersprungene URLs mit Begründung (nofollow, robots.txt) im Error-Log protokolliert.
    • Worker-Logging abgesichert: Der Background-Worker gibt keine PHP-Warnings mehr aus, wenn ein Batch durch einen Fehler unterbrochen wird.

    wenn etwas möglich erscheint mach ich das, wenn das nicht klappt gehts ans unmögliche und ansonsten das undenkbare.

    - nun stolz rauchfrei - Ich denke also Bing ich!

    Support 24h Bereitschaft 0173 6107465 - NUR Für Kunden von SEO NW!

  • Search-Console.PRO — Changelog


    Version 1.7.2 — 07. Februar 2026

    🐛 Kritisch: Performance-Daten wurden ~4-5x zu hoch angezeigt

    Ursache: Bei der Berechnung von Klicks, Impressionen, CTR und Position wurden intern alle Dimensions-Ebenen (Keywords, Seiten, Länder) auf die Tagesgesamtwerte draufaddiert, statt nur die eigentlichen Gesamtwerte zu verwenden. Acht Abfragen in vier Modulen waren betroffen.

    Auswirkung: Alle KPI-Anzeigen im Dashboard, auf der Performance-Seite, in generierten Reports und bei der Alert-Erkennung zeigten systematisch zu hohe Werte — je nach Anzahl der rankenden Keywords und Seiten um den Faktor 3-5x.

    Betroffene Bereiche:

    • Dashboard — Performance-Summary und Chart-Verlauf
    • Performance-Seite — Haupt-Statistiken und Chart-Daten inkl. Vergleichszeitraum
    • Report-Generator — Zusammenfassungs-KPIs und Performance-Chart im Export
    • Alert-System — Metrik-Einbruch-Erkennung (Klicks, Impressionen) und CTR-Drop-Check

    Kein Re-Sync erforderlich — die gespeicherten Daten waren korrekt, nur die Abfragen waren fehlerhaft. Nach dem Update werden die richtigen Werte sofort angezeigt.

    wenn etwas möglich erscheint mach ich das, wenn das nicht klappt gehts ans unmögliche und ansonsten das undenkbare.

    - nun stolz rauchfrei - Ich denke also Bing ich!

    Support 24h Bereitschaft 0173 6107465 - NUR Für Kunden von SEO NW!

  • Search-Console.PRO — Changelog


    Version 1.8.0 — 07. Februar 2026

    ✨ Neu: .htaccess-Schutz beim Onpage-Crawl (HTTP Basic Auth)

    Websites, die mit einem .htaccess-Passwortschutz gesichert sind (z.B. Staging-Umgebungen, Intranets oder Entwicklungsserver), können ab sofort gecrawlt werden.

    So funktioniert's:

    • Im Crawler-Formular gibt es eine neue Option „🔒 .htaccess-Schutz (HTTP Basic Auth)"
    • Nach Aktivierung erscheinen Felder für Benutzername und Passwort
    • Die Zugangsdaten werden bei jedem Request des Crawls automatisch mitgeschickt

    Sicherheit:

    • Zugangsdaten werden AES-256-verschlüsselt in der Datenbank gespeichert — niemals im Klartext
    • Die Credentials werden ausschließlich an die gecrawlte Domain gesendet, nicht an externe Links
    • Nach Abschluss des Crawls (egal ob erfolgreich, abgebrochen oder fehlgeschlagen) werden die Zugangsdaten automatisch und unwiderruflich aus der Datenbank gelöscht

    wenn etwas möglich erscheint mach ich das, wenn das nicht klappt gehts ans unmögliche und ansonsten das undenkbare.

    - nun stolz rauchfrei - Ich denke also Bing ich!

    Support 24h Bereitschaft 0173 6107465 - NUR Für Kunden von SEO NW!

  • Search-Console.PRO — Changelog


    Version 1.8.1 — 07. Februar 2026

    ✨ Neu: Light Mode

    Der lang angekündigte Light Mode ist da! Das Theme kann in den Einstellungen unter Präferenzen umgeschaltet werden und greift sofort als Live-Preview.

    Was sich ändert:

    • Helle Hintergründe, dunkle Texte und dezente Borders im gesamten Tool
    • Sidebar, Navigation und Footer werden vollständig im hellen Design dargestellt
    • Cards, Tabellen, Formularfelder, Badges und Code-Blöcke passen sich an
    • Scrollbar und Text-Selektion sind farblich abgestimmt
    • Weichere Schatten für ein natürliches Erscheinungsbild
    • Das Theme wird serverseitig gespeichert und zusätzlich im Browser gecacht, um Aufblitzen beim Seitenwechsel zu verhindern

    Technische Details:

    • Cache-Busting für CSS und JS Dateien eingeführt — bei Updates wird automatisch die neue Version geladen
    • Status-Farben (Erfolg, Warnung, Fehler) wurden für ausreichend Kontrast auf hellem Hintergrund angepasst

    Bekannte Einschränkung:

    • Chart-Farben (Gitternetzlinien, Achsenbeschriftungen) sind noch nicht themeabhängig — folgt in einem späteren Update

    wenn etwas möglich erscheint mach ich das, wenn das nicht klappt gehts ans unmögliche und ansonsten das undenkbare.

    - nun stolz rauchfrei - Ich denke also Bing ich!

    Support 24h Bereitschaft 0173 6107465 - NUR Für Kunden von SEO NW!