Einzelnen Beitrag anzeigen

Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#1

[PHP] Zuverlässigkeit des Referers?

  Alt 7. Sep 2008, 08:19
Hallo,

ich weiß, dass sich ein Referer ($_SERVER['HTTP_REFERER']) manipulieren lässt, mich würde dennoch interessieren, wie vertretbar es ist, diesen auszuwerten.
Ich möchte testen, ob der Referer meine Domain enthält, um eine kleine Überprüfung einzubauen, ob eine Aktion erlaubt ist. Das mache ich so:

Code:
$referer = isset($_SERVER['HTTP_REFERER']) ? strtolower($_SERVER['HTTP_REFERER']) : '';

if (!stristr($referer, 'http://' . $config['site_name_domain']) &&
   !stristr($referer, 'http://www.' . $config['site_name_domain']) &&
   !stristr($referer, 'http://localhost'))
{
   die('...');
}
else
{
   do_something();
}
Das Problem ist nun natürlich, dass im Falle eines leeren Referers auch "die()" ausgeführt wird.

Wie oft ist denn ein Referer leer, wenn man einen Link auf der eigenen Website anklickt?
Kann man so eine Überprüfung vertreten oder würde diese zu viele Besucher fehlerhaft erkennen?

Grüße
  Mit Zitat antworten Zitat