Good Morning Deutschland!
Läuft bei Dir PHP auf dem Server? Falls ja:
Die folgenden Zeilen dürfen NICHT in der Framesets-Seite geladen werden (also nur im Menü und in deinen Unterseiten):
<?php
if (!isset($HTTP_REFERER) || !$HTTP_REFERER == "http://www.deineDomain.de/frameset.html"){
header ("LOCATION: http://www.deineDomain.de/frameset.html");
}
else{
##Mal zum Testen wie deine Referer-Seite heißt
print ("$HTTP_REFERER");
}
?>
Achtung. Der Referer deiner Startseite (also wenn du dein Frameset als index-Datei auf deinem Hauptverzeichnis liegen hast, kann der Referer unterschiedlich aussehen ("http://domain.de/","http://www.domain.de",auch "" (leer!!!!))
Das ist natürlich auch nur ne bedingt gute Lösung, da der Referer manipuliert werden kann, aber für die "normale" Homepage eine durchaus vertretbare Lösung. Ich hab das auch schon mal bei mir so gebaut. Es funzt bei den meisten, aber ganz klar: Nicht bei allen!
Noch ne andere Lösung mit php:
<frameset cols="150,*">
<frame src="menu.html">
<frame src="<?php print $page; ?>">
</frameset>
und diese Frameset ruft Du dann mit
http://www.domain.de/deinFrameset.php?page=unterseite.html
oder mit Unterverzeichnis:
<frameset cols="150,*">
<frame src="menu.html">
<frame src="<?php print $verzeichnis."/".$page; ?>">
</frameset>
Aufruf mit:
http://www.domain.de/deinFrameset.php?verzeichnis=Ordner1&page=unterseite.html
Dann kannst Du beliebig verlinken.
Genug gesabbelt.
Greets Tom1tk