Hi,
ich möchte eine URL gegen URL-Spielereien schützen damit Suchmaschinen nicht auf die Idee kommen eine falsch geschriebene URL zu indexieren, denn Fall habe ich seit kurzen, die Startseite ist mit verschiedenen ?kurs=45.xx indexiert. Aber nun zum neuen Skript welches ich absichern möchte, folgener Code.
Funktionsweise: Es gibt max den Parameter 'liste=' in der Url z.B. /index.php?liste=2:alias , der mit REQUEST_URI abgeglichen wird. Das soll sicherstellen dass es sich um einen Original-Link handelt ohne Änderungen im Alias oder angehangenen falschen Parametern.
Gibt es für den Code bedenken? Ist das sicher?
ich möchte eine URL gegen URL-Spielereien schützen damit Suchmaschinen nicht auf die Idee kommen eine falsch geschriebene URL zu indexieren, denn Fall habe ich seit kurzen, die Startseite ist mit verschiedenen ?kurs=45.xx indexiert. Aber nun zum neuen Skript welches ich absichern möchte, folgener Code.
PHP:
if(isset($_GET["liste"])) {
$id = intval($_GET["liste"]);
if($res=mysql_query("select `id`, `alias`, [*] from `".MYSQLTABELLE_FEEDS."` where `id`='$id' limit 1;")) {
if($dsatz=mysql_fetch_assoc($res)) {
// Hier die Schlüsselstelle
$aliasuri = $_SERVER["PHP_SELF"]."?liste=".$dsatz["id"].":".$dsatz["alias"];
if($_SERVER["REQUEST_URI"] == $aliasuri) {
feedausgabe($dsatz); // URL OK
}
}
} else {mysqlfehler(__FILE__.":".__LINE__);exit;}
header("HTTP/1.1 301 Moved Permanently");
header("location: ".dirname($_SERVER["PHP_SELF"])."/");
exit();
}
Funktionsweise: Es gibt max den Parameter 'liste=' in der Url z.B. /index.php?liste=2:alias , der mit REQUEST_URI abgeglichen wird. Das soll sicherstellen dass es sich um einen Original-Link handelt ohne Änderungen im Alias oder angehangenen falschen Parametern.
Gibt es für den Code bedenken? Ist das sicher?
Zuletzt bearbeitet: