Beiträge von Alex07

    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

    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.

    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.

    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.

    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]

    ##### Common hacking tools and bandwidth hoggers block
    SetEnvIf user-agent "(?i:WebBandit)" stayout=1
    SetEnvIf user-agent "(?i:webbandit)" stayout=1
    SetEnvIf user-agent "(?i:Acunetix)" stayout=1
    SetEnvIf user-agent "(?i:binlar)" stayout=1
    SetEnvIf user-agent "(?i:BlackWidow)" stayout=1
    SetEnvIf user-agent "(?i:Bolt 0)" stayout=1
    SetEnvIf user-agent "(?i:Bot mailto:craftbot@yahoo.com)" stayout=1
    SetEnvIf user-agent "(?i:BOT for JCE)" stayout=1
    SetEnvIf user-agent "(?i:casper)" stayout=1
    SetEnvIf user-agent "(?i:checkprivacy)" stayout=1
    SetEnvIf user-agent "(?i:ChinaClaw)" stayout=1
    SetEnvIf user-agent "(?i:clshttp)" stayout=1
    SetEnvIf user-agent "(?i:cmsworldmap)" stayout=1
    SetEnvIf user-agent "(?i:comodo)" stayout=1
    SetEnvIf user-agent "(?i:Custo)" stayout=1
    SetEnvIf user-agent "(?i:Default Browser 0)" stayout=1
    SetEnvIf user-agent "(?i:diavol)" stayout=1
    SetEnvIf user-agent "(?i:DIIbot)" stayout=1
    SetEnvIf user-agent "(?i:DISCo)" stayout=1
    SetEnvIf user-agent "(?i:dotbot)" stayout=1
    SetEnvIf user-agent "(?i:Download Demon)" stayout=1
    SetEnvIf user-agent "(?i:eCatch)" stayout=1
    SetEnvIf user-agent "(?i:EirGrabber)" stayout=1
    SetEnvIf user-agent "(?i:EmailCollector)" stayout=1
    SetEnvIf user-agent "(?i:EmailSiphon)" stayout=1
    SetEnvIf user-agent "(?i:EmailWolf)" stayout=1
    SetEnvIf user-agent "(?i:Express WebPictures)" stayout=1
    SetEnvIf user-agent "(?i:extract)" stayout=1
    SetEnvIf user-agent "(?i:ExtractorPro)" stayout=1
    SetEnvIf user-agent "(?i:EyeNetIE)" stayout=1
    SetEnvIf user-agent "(?i:feedfinder)" stayout=1
    SetEnvIf user-agent "(?i:FHscan)" stayout=1
    SetEnvIf user-agent "(?i:FlashGet)" stayout=1
    SetEnvIf user-agent "(?i:flicky)" stayout=1
    SetEnvIf user-agent "(?i:GetRight)" stayout=1
    SetEnvIf user-agent "(?i:GetWeb!)" stayout=1
    SetEnvIf user-agent "(?i:Go-Ahead-Got-It)" stayout=1
    SetEnvIf user-agent "(?i:Go!Zilla)" stayout=1
    SetEnvIf user-agent "(?i:grab)" stayout=1
    SetEnvIf user-agent "(?i:GrabNet)" stayout=1
    SetEnvIf user-agent "(?i:Grafula)" stayout=1
    SetEnvIf user-agent "(?i:harvest)" stayout=1
    SetEnvIf user-agent "(?i:HMView)" stayout=1
    SetEnvIf user-agent "(?i:ia_archiver)" stayout=1
    SetEnvIf user-agent "(?i:Image Stripper)" stayout=1
    SetEnvIf user-agent "(?i:Image Sucker)" stayout=1
    SetEnvIf user-agent "(?i:InterGET)" stayout=1
    SetEnvIf user-agent "(?i:Internet Ninja)" stayout=1
    SetEnvIf user-agent "(?i:InternetSeer.com)" stayout=1
    SetEnvIf user-agent "(?i:jakarta)" stayout=1
    SetEnvIf user-agent "(?i:Java)" stayout=1
    SetEnvIf user-agent "(?i:JetCar)" stayout=1
    SetEnvIf user-agent "(?i:JOC Web Spider)" stayout=1
    SetEnvIf user-agent "(?i:kmccrew)" stayout=1
    SetEnvIf user-agent "(?i:larbin)" stayout=1
    SetEnvIf user-agent "(?i:LeechFTP)" stayout=1
    SetEnvIf user-agent "(?i:libwww)" stayout=1
    SetEnvIf user-agent "(?i:Mass Downloader)" stayout=1
    SetEnvIf user-agent "(?i:Maxthon$)" stayout=1
    SetEnvIf user-agent "(?i:microsoft.url)" stayout=1
    SetEnvIf user-agent "(?i:MIDown tool)" stayout=1
    SetEnvIf user-agent "(?i:miner)" stayout=1
    SetEnvIf user-agent "(?i:Mister PiX)" stayout=1
    SetEnvIf user-agent "(?i:NEWT)" stayout=1
    SetEnvIf user-agent "(?i:MSFrontPage)" stayout=1
    SetEnvIf user-agent "(?i:Navroad)" stayout=1
    SetEnvIf user-agent "(?i:NearSite)" stayout=1
    SetEnvIf user-agent "(?i:Net Vampire)" stayout=1
    SetEnvIf user-agent "(?i:NetAnts)" stayout=1
    SetEnvIf user-agent "(?i:NetSpider)" stayout=1
    SetEnvIf user-agent "(?i:NetZIP)" stayout=1
    SetEnvIf user-agent "(?i:nutch)" stayout=1
    SetEnvIf user-agent "(?i:Octopus)" stayout=1
    SetEnvIf user-agent "(?i:Offline Explorer)" stayout=1
    SetEnvIf user-agent "(?i:Offline Navigator)" stayout=1
    SetEnvIf user-agent "(?i:PageGrabber)" stayout=1
    SetEnvIf user-agent "(?i:Papa Foto)" stayout=1
    SetEnvIf user-agent "(?i:pavuk)" stayout=1
    SetEnvIf user-agent "(?i:pcBrowser)" stayout=1
    SetEnvIf user-agent "(?i:PeoplePal)" stayout=1
    SetEnvIf user-agent "(?i:planetwork)" stayout=1
    SetEnvIf user-agent "(?i:psbot)" stayout=1
    SetEnvIf user-agent "(?i:purebot)" stayout=1
    SetEnvIf user-agent "(?i:pycurl)" stayout=1
    SetEnvIf user-agent "(?i:RealDownload)" stayout=1
    SetEnvIf user-agent "(?i:ReGet)" stayout=1
    SetEnvIf user-agent "(?i:Rippers 0)" stayout=1
    SetEnvIf user-agent "(?i:SeaMonkey$)" stayout=1
    SetEnvIf user-agent "(?i:sitecheck.internetseer.com)" stayout=1
    SetEnvIf user-agent "(?i:SiteSnagger)" stayout=1
    SetEnvIf user-agent "(?i:skygrid)" stayout=1
    SetEnvIf user-agent "(?i:SmartDownload)" stayout=1
    SetEnvIf user-agent "(?i:sucker)" stayout=1
    SetEnvIf user-agent "(?i:SuperBot)" stayout=1
    SetEnvIf user-agent "(?i:SuperHTTP)" stayout=1
    SetEnvIf user-agent "(?i:Surfbot)" stayout=1
    SetEnvIf user-agent "(?i:tAkeOut)" stayout=1
    SetEnvIf user-agent "(?i:Teleport Pro)" stayout=1
    SetEnvIf user-agent "(?i:Toata dragostea mea pentru diavola)" stayout=1
    SetEnvIf user-agent "(?i:turnit)" stayout=1
    SetEnvIf user-agent "(?i:vikspider)" stayout=1
    SetEnvIf user-agent "(?i:VoidEYE)" stayout=1
    SetEnvIf user-agent "(?i:Web Image Collector)" stayout=1
    SetEnvIf user-agent "(?i:Web Sucker)" stayout=1
    SetEnvIf user-agent "(?i:WebAuto)" stayout=1
    SetEnvIf user-agent "(?i:WebCopier)" stayout=1
    SetEnvIf user-agent "(?i:WebFetch)" stayout=1
    SetEnvIf user-agent "(?i:WebGo IS)" stayout=1
    SetEnvIf user-agent "(?i:WebLeacher)" stayout=1
    SetEnvIf user-agent "(?i:WebReaper)" stayout=1
    SetEnvIf user-agent "(?i:WebSauger)" stayout=1
    SetEnvIf user-agent "(?i:Website eXtractor)" stayout=1
    SetEnvIf user-agent "(?i:Website Quester)" stayout=1
    SetEnvIf user-agent "(?i:WebStripper)" stayout=1
    SetEnvIf user-agent "(?i:WebWhacker)" stayout=1
    SetEnvIf user-agent "(?i:WebZIP)" stayout=1
    SetEnvIf user-agent "(?i:Wget)" stayout=1
    SetEnvIf user-agent "(?i:Widow)" stayout=1
    SetEnvIf user-agent "(?i:WWW-Mechanize)" stayout=1
    SetEnvIf user-agent "(?i:WWWOFFLE)" stayout=1
    SetEnvIf user-agent "(?i:Xaldon WebSpider)" stayout=1
    SetEnvIf user-agent "(?i:Yandex)" stayout=1
    SetEnvIf user-agent "(?i:Zeus)" stayout=1
    SetEnvIf user-agent "(?i:zmeu)" stayout=1
    SetEnvIf user-agent "(?i:CazoodleBot)" stayout=1
    SetEnvIf user-agent "(?i:discobot)" stayout=1
    SetEnvIf user-agent "(?i:ecxi)" stayout=1
    SetEnvIf user-agent "(?i:GT::WWW)" stayout=1
    SetEnvIf user-agent "(?i:heritrix)" stayout=1
    SetEnvIf user-agent "(?i:HTTP::Lite)" stayout=1
    SetEnvIf user-agent "(?i:HTTrack)" stayout=1
    SetEnvIf user-agent "(?i:ia_archiver)" stayout=1
    SetEnvIf user-agent "(?i:id-search)" stayout=1
    SetEnvIf user-agent "(?i:id-search.org)" stayout=1
    SetEnvIf user-agent "(?i:IDBot)" stayout=1
    SetEnvIf user-agent "(?i:Indy Library)" stayout=1
    SetEnvIf user-agent "(?i:IRLbot)" stayout=1
    SetEnvIf user-agent "(?i:ISC Systems iRc Search 2.1)" stayout=1
    SetEnvIf user-agent "(?i:LinksManager.com_bot)" stayout=1
    SetEnvIf user-agent "(?i:linkwalker)" stayout=1
    SetEnvIf user-agent "(?i:lwp-trivial)" stayout=1
    SetEnvIf user-agent "(?i:MFC_Tear_Sample)" stayout=1
    SetEnvIf user-agent "(?i:Microsoft URL Control)" stayout=1
    SetEnvIf user-agent "(?i:Missigua Locator)" stayout=1
    SetEnvIf user-agent "(?i:panscient.com)" stayout=1
    SetEnvIf user-agent "(?i:PECL::HTTP)" stayout=1
    SetEnvIf user-agent "(?i:PHPCrawl)" stayout=1
    SetEnvIf user-agent "(?i:PleaseCrawl)" stayout=1
    SetEnvIf user-agent "(?i:SBIder)" stayout=1
    SetEnvIf user-agent "(?i:Snoopy)" stayout=1
    SetEnvIf user-agent "(?i:Steeler)" stayout=1
    SetEnvIf user-agent "(?i:URI::Fetch)" stayout=1
    SetEnvIf user-agent "(?i:urllib)" stayout=1
    SetEnvIf user-agent "(?i:Web Sucker)" stayout=1
    SetEnvIf user-agent "(?i:webalta)" stayout=1
    SetEnvIf user-agent "(?i:WebCollage)" stayout=1
    SetEnvIf user-agent "(?i:Wells Search II)" stayout=1
    SetEnvIf user-agent "(?i:WEP Search)" stayout=1
    SetEnvIf user-agent "(?i:zermelo)" stayout=1
    SetEnvIf user-agent "(?i:ZyBorg)" stayout=1
    SetEnvIf user-agent "(?i:Indy Library)" stayout=1
    SetEnvIf user-agent "(?i:libwww-perl)" stayout=1
    SetEnvIf user-agent "(?i:Go!Zilla)" stayout=1
    SetEnvIf user-agent "(?i:TurnitinBot)" stayout=1
    SetEnvIf user-agent "(?i:sqlmap)" stayout=1
    <IfModule !mod_authz_core.c>
    deny from env=stayout
    </IfModule>
    <IfModule mod_authz_core.c>
    <RequireAll>
    Require all granted
    Require not env stayout
    </RequireAll>
    </IfModule>
    # ---HoggerAgents---


    Kann natürlich beliebig erweitert werden. Ist meiner Meinung nach dabei die sauberste Lösung.

    Man kann auf jeder Seite einen versteckten Link auf eine seite unterbringen, und wer diesen Link aufruft bekommt die IP für 14 Tage gesperrt.

    Ja, die sind manchmal richtig agressiv. Würde ich aber eher von abraten... Also ich könnte da nicht schlafen, wenn dann doch mal genauer hingeschaut wird bei den "guten" Bots.

    Klar, wir haben bspw Googlebot gesagt: Guck da nicht hin. Was ist aber, wenn ein Quality Rater kommen sollte und sich selbst aussperrt, weil er das untersuchen möchte.

    Die Idee ist gut, wäre mir schon zu riskant. Das Risiko ist rein hypothetisch, sehr unwahrscheinlich. Aber weeste... ich will da null Risiko eingehen. Wirklich Null, wo es geht.