Hi!
Wie kann ich mit PHP eine Quereinstieg auf Webseiten verhindern?
Beispiel:
Der Einstieg in die Webseiten erfolgt über Seite A. Dort gibt es ein Menü, von dem aus man nach B, C, D und E weiterverzweigen kann. Jeder dieser Seiten hat wiederum Unterseiten: B1, B2, B3, C1, C2, C3 usw.
Nun möchte ich verhindern, dass jemand direkt die Seite B1 aufruft.
Bislang habe ich das mittels einer Session-ID gemacht. Beim Aufruf von Seite A wird eine Session-ID generiert, in einer Datenbanktabelle vermerkt (Session-ID, Seitenkennung der Seite A sowie Datum und Uhrzeit) und durch die Seiten weitergereicht.
Jede Seite nimmt diese Session-ID entgegen (mittels POST) und prüft dann, ob es einen entsprechenden Eintrag in der Datenbank gibt (Select auf die Session-ID und die Seite A). Gibt es einen, wird die aufgerufene Seite angezeigt (es wird erneut die Session-ID, die Kennung der aufgerufenen Seite sowie Datum und Uhrzeit in der Datenbank gespeichert). Gibt es keinen Eintrag (die Antwortmenge ist leer), erfolgt der Sprung zur Seite A mittels
header(„location:a.php“);
Eigentlich hatte ich gehofft, damit Quereinsteiger zu verhindern und auf die Startseite umzuleiten. Bei einer Analyse der Daten habe ich nun aber festgestellt, dass dort Direktaufrufe von untergeordneten Webseiten (B1, B2, …) mit einmalig erscheinenden Session-IDs existieren.
Frage 1: Wie kann das sein?
Frage 2: Wie bekomme ich die Webseite so dicht, dass es keinen Quereinstieg mehr gibt?
Grüße
Heinrich