phpbar.de logo

Mailinglisten-Archive

[php] HTTP_REFERER und bots

[php] HTTP_REFERER und bots

Werner Saumweber wsaumweber at mnet-online.de
Son Sep 25 18:56:58 CEST 2005


On Sun, 25 Sep 2005 16:17:40 +0200, Ernst May-Jung wrote:


>Hallo,

>ich möchte in meine Seiten ein Feature einbauen was dem User hilft, aber für 
>Suchmaschinen eher "Gift" wäre.

>Natürlich weiß ich wie mann Bots am Referer (nicht besonder sicher) erkennen 
>kann und nutze dies auch für meine Statistiken.

>In diesem Fall sollte es aber noch sicherer sein. Es handelt sich um die 
>Rückwärtsnavigation auf der Seite und um das setzen einer Session-ID in der 
>Browserzeile zusätzlich zum Cookie, welches vielleicht abgelehnt wird.


>Bei Cookies gehe ich schwer davon aus, das Robots diese nicht mitbringen.
>Kann ich auch beim HTTP_REFERER sicher sein, dass namhafte Robots diese nicht 
>verwenden?

>Gruß
>    Ernst
>-- 

Servus Ernst,

für mich ist das jetzt witzig, weil ich exakt dieses Feature (bei mir heisst es Seitenhistorie :-) in eine neue 
Hobby-Anwendung eingebaut habe. Da ich noch in der Erprobung bin, habe ich über die Robots noch nicht 
nachgedacht.
Ich bin mir auch nicht sicher, ob die Seitenhistorie wirklich Gift für einen Robot ist. Bei mir ist es halt nur ein 
Linkblock im Navigationslayer, nicht mehr. Und die Request-Strings sind immer gleich für eine Seite.
Das Skript speichert den $_REQUEST-String in einem Array in der Session, was natürlich vorraussetzt, dass 
die Sessionverwaltung funzt.

Aber ich denke, dass die Prüfung auf den Referer ausreichend ist:

if( (stristr($_SERVER["HTTP_USER_AGENT"],"Mozilla") == true or stristr($_SERVER
["HTTP_USER_AGENT"],"Opera") == true) and (stristr($_SERVER["HTTP_USER_AGENT"],"slurp") == false 
and stristr($_SERVER["HTTP_USER_AGENT"],"firefly") == false and stristr($_SERVER
["HTTP_USER_AGENT"],"ViolaBot") == false))

Sollte ich falsch liegen, würde mich das schon interessieren.

Ciao

Werner



php::bar PHP Wiki   -   Listenarchive