Sonstiges

htaccess: Bots aussperren

wenn ich via .htaccess Bots so aussperre:
SetEnvIfNoCase User-Agent „Feedshow/1.0“ leecher=yes
SetEnvIfNoCase User-Agent „Bitacle bot/1.1Bot[Bitacle bot/1.1]“ leecher=yes
order deny,allow
deny from env=leecher

Muss ich bei einer Änderung der Versionsbezeichnung (zB FeedShow/1.0 auf ../1.1) erneut die htaccess anpassen. Bis man das merkt, vergeht ja auch eine gewisse Zeit, da ich nicht realtime die Logdateien auswerte. Frage: Kann man stattdessen auch Platzhalter / Jokerzeichen verwenden?

ach ja, btw… siehe Naked Conversations Kommentar

Über den Autor

Robert Basic

Robert Basic ist Namensgeber und Gründer von BASIC thinking und hat die Seite 2009 abgegeben. Von 2004 bis 2009 hat er über 12.000 Artikel hier veröffentlicht.

18 Kommentare

  • Kann man. Wenn es mit dem Referer geht wie z.B. in

    setenvifnocase Referer „^http://.*poker.*.([w.-]*){1,2}(/){0,1}“ boeser

    dann sollte es auch mit UserAgent gehen. Also sollten komplette reguläre Ausdrücke gehen, was deinen zweiten Eintrag schon etwas merkwürdig erscheinen lässt, dass er funktioniert hat 🙂

  • ahso, halt, habe den Eintrag falsch abgeschrieben, da steht natürlich „Bitacle bot/1.1“, sorry, man sollte copy&paste verwenden 😉

    Danke für den Tipp mit den Zeichen, heisst „*“ ist ein Joker für alles danach, würde also

    „Bitacle bot*“ gehen?

  • Nein, der Stern ist ein Wiederholungszeichen für das letzte davor stehende Atom, was ein gruppierter Ausdruck sein kann, oder ein Zeichen. Bitacle Bot* würde also das t wiederholen (0 bis n mal). Du möchstest folgendes haben:

    Bitacle Bot.*

    Du kannst das natürlich auch weiter eingrenzen, so z.B. nur Zahlen zulassen, reguläre Ausdrücke sind sehr, sehr flexibel.

  • Also komplett wäre das dann:

    SetEnvIfNoCase User-Agent "€œFeedshow.*"€³ leecher=yes
    SetEnvIfNoCase User-Agent "€œBot[Bitacle bot.*]"€? leecher=yes
    order deny,allow
    deny from env=leecher

    So richtig? Und ist es egal wo das in der .htaccess steht? Bin da nicht so fit, deswegen frag ich

  • Aber dort sind ja die Wildcards noch nicht drin. Also so?

    SetEnvIfNoCase User-Agent "Feedshow.*" leecher=yes
    SetEnvIfNoCase User-Agent "Bitacle bot.*" leecher=yes
    order deny,allow
    deny from env=leecher

    Und das kann überall in der .htaccess stehen?

    Sorry wenn ich so ausführlich frage aber die .htaccess ist für mich ein Buch mit sieben Siegeln – da geht einfach viel zu schnell viel zu viel kaputt 😀

  • http://www.ilovejackdaniels.com/cheat-sheets/regular-expressions-cheat-sheet/

    Der Spickzettel für Reguläre Ausdrücke. Ich hab ihn mir schon übers Bett gehängt 😉

    Bei ILoveJackDaniels.com gibt es übrigens eine ganze Reihe wirklich brauchbarer Cheat-Sheets. Unter anderem zu den Themen CSS, XML, mod_rewrite, usw.
    Im Cheat-Sheet für mod_rewrite sind ein paar Beispiele für die Anwendung von Regulären Ausdrücken in .htaccess. Man sollte nämlich nicht verschweigen das es verschiedene Varianten von Regulären Ausdrücken gibt.

  • …und wenn Du die Leute, die von dort kommen in dem sie einen Link angeklickt haben, aussperren willst, dann fügst Du gleich noch dieses hinzu:

    SetEnvIfNoCase Referer *.bitacle.org leecher=yes

    Das sperrt zumindestens die Leute aus, die mit einem Referer von dort bei Dir eintreffen. Nützt nicht sehr viel, ist aber einen kleine zusätzliche Schweinerei. 😉

  • Wolf, ich fürchte das schadet nur Dir selber. So finden die Besucher nicht Dein echtes Blog, und Bitacle ist es eh egal, weil ihre Werbung sind sie ja schon los geworden…

  • Neues zu bitacle.org, Google kümmert sich…

    Wie hier berichtet habe ich einige Google-Adressen zum Thema bitacle angeschrieben.
    Die Reaktion lies nicht lange auf sich warten:

    Hallo Herr Herold,
    vielen Dank für Ihr nettes Mail und den Hinsweis auf bitacle.org.
    Wir kümmern uns natürlich…