Seite 1 von 1

.htaccess Frage / Teilstring überprüfen und sperren

Verfasst: 17.05.2005, 21:45
von Chris2005
Hallo,

ich möchte gerne einen bestimmten User-agent blocken. Allerdings soll nur ein Teilstring überprüft werden.

Der betroffene Useragent lautet: Mozilla/4.0 (compatible; Cerberian Drtrs Version-3.2-Build-0)

Da sicherlich noch andere Builds in der Gegend rumschwirren, möchte ich alles was cerberian im User-Agent hat, vor die Tür setzen.

(ich poste nur die entsprechende Rewrite-cond. Es stehen noch ander Rules davor, bzw. dahinter, daher das [OR]. Die entsprechende Rewrite-Rule habe ich auch weggelassen).

Code: Alles auswählen

RewriteCond %{HTTP_USER_AGENT} ^Cerberian [NC,OR]
funktioniert nicht.

Code: Alles auswählen

RewriteCond %{HTTP_USER_AGENT} ^*.Cerberian.* [NC,OR]
erzeugt einen internal server error. Variationen mit dem * funktionieren auch nicht. Lt. Apache Doku soll der * ein Platzhalter sein...

Kann mir hier jemand auf die Sprünge helfen? Leider konnte ich im Forum nichts finden. Es gibt doch zuviele .htaccess threads, die sehr wenig mit konkreten Fragestellungen zu tun haben :)

Chris

Verfasst:
von
SEO Consulting bei ABAKUS Internet Marketing
Erfahrung seit 2002
  • persönliche Betreuung
  • individuelle Beratung
  • kompetente Umsetzung

Jetzt anfragen: 0511 / 300325-0.


Re: .htaccess Frage / Teilstring überprüfen und sperren

Verfasst: 18.05.2005, 00:23
von robo
Chris2005 hat geschrieben:ich möchte gerne einen bestimmten User-agent blocken. Allerdings soll nur ein Teilstring überprüft werden.

Der betroffene Useragent lautet: Mozilla/4.0 (compatible; Cerberian Drtrs Version-3.2-Build-0)

Da sicherlich noch andere Builds in der Gegend rumschwirren, möchte ich alles was cerberian im User-Agent hat, vor die Tür setzen.

(ich poste nur die entsprechende Rewrite-cond. Es stehen noch ander Rules davor, bzw. dahinter, daher das [OR]. Die entsprechende Rewrite-Rule habe ich auch weggelassen).

Code: Alles auswählen

RewriteCond %{HTTP_USER_AGENT} ^Cerberian [NC,OR]
funktioniert nicht.
Eh klar. Schliesslich beginnt der UA-String mit "Mozilla", nicht mit "Cerberian".
Chris2005 hat geschrieben:

Code: Alles auswählen

RewriteCond %{HTTP_USER_AGENT} ^*.Cerberian.* [NC,OR]
erzeugt einen internal server error. Variationen mit dem * funktionieren auch nicht. Lt. Apache Doku soll der * ein Platzhalter sein...
* ist kein Platzhalter, sondern ein Quantifier ...
Chris2005 hat geschrieben:Kann mir hier jemand auf die Sprünge helfen?
:-)

Schon mal

Code: Alles auswählen

RewriteCond %{HTTP_USER_AGENT} Cerberian [NC,OR]
versucht?

cu, Robo :)

.htaccess Frage / Teilstring überprüfen und sperren

Verfasst: 18.05.2005, 20:32
von Chris2005
Hi Robo,

danke für den Tip. Manchmal kommt man nicht auf die simpelsten Ideen :)

Eine Frage in Hinblick auf die Quantifier:

Code: Alles auswählen

Aus der mod_rewrite-doku:

Quantifiers:
? 0 or 1 of the preceding text
* 0 or N of the preceding text (N > 0)
+ 1 or N of the preceding text (N > 1)
Wie habe ich das dann mit dem preceding zu verstehen?

Chris

Re: .htaccess Frage / Teilstring überprüfen und sperren

Verfasst: 18.05.2005, 21:59
von robo
Chris2005 hat geschrieben:Eine Frage in Hinblick auf die Quantifier:

Code: Alles auswählen

Aus der mod_rewrite-doku:

Quantifiers:
? 0 or 1 of the preceding text
* 0 or N of the preceding text (N > 0)
+ 1 or N of the preceding text (N > 1)
Wie habe ich das dann mit dem preceding zu verstehen?
preceding = vorhergehend

D. h. das vorhergehende Zeichen, die vorhergehende Klammer oder die vorhergehende Zeichenklasse.

cu, Robo :)

.htaccess Frage / Teilstring überprüfen und sperren

Verfasst: 19.05.2005, 22:35
von Chris2005
ahh ... ok. Danke für die Aufklärung... Irgendwann werde ich das auch mal begriffen haben...

Muss das mit dem Cerberian noch ausprobieren... bin ich noch nicht zu gekommen. Danke nochmal...

Chris