RBI-Logo
Beispielwebseiten

Startseite
Download
Paßwortschutz
SHTML
PHP
Redirect

Verantwortlich für Inhalt und Design:
Webmaster der Informatik
<Email>
<Homepage>

Erklärung: Diese Seite gehört zu den Webseiten der RBI. Für den Inhalt gelinkter Seiten außerhalb dieser Seiten sind die Autoren nicht verantwortlich.

Zeitstempel:  23.05.2003 UTC 10:29:08
© EJP

Webserver - Beispiel für Umleitungen

Es gibt mehrere Formen der "Umleitung". Warum aber überhaupt umleiten? Dafür gibt es diverse Gründe. Man hat endlich eine eigene Domäne und möchte dorthin umleiten. Oder man hat seine alte index.html durch eine index.shtml oder index.php ersetzt (mehr Funktionalität!), möchte aber, daß Links und Bookmarks auf die neue Seite verweisen. Letztendlich gibt es sogar rechtliche Gründe (s.u.).

Umleitung per einfacher HTML-Datei

Die einfachste Methode, eine Seite umzuleiten, geht per HTML. Wenn man auf den folgenden Link umleitung.html klickt, kommt man wieder auf diese Seite. Hier der Quelltext von "umleitung.html":
<html><head><meta http-equiv="Refresh" content="1; URL=http://www.cs.uni-frankfurt.de/~www1test/redirect.html">
</head><body></body></html>
Der Befehl für den Browser ist "Refresh". Unter "content" wird zuerst die Anzahl der Sekunden angegeben, die der Browser wartet, dann die neue URL. Mit dieser Methode kann man auch auf Seiten außerhalb der RBI umleiten. Am besten ist bei einer internen Umleitung der Wert 0 für Sekunden, da davon der Benutzer kaum etwas mitbekommt:
umleitung0.html führt zur Startseite

Umleitung über .htaccess

Am elegantesten ist natürlich die serverseitige Umleitung, da der Browser davon nichts mitbekommt und der Zeitverlust am geringsten sein dürfte. Die Syntax ist denkbar einfach, wie man am folgenden Beispiel sieht: Nach den Schlüsselwörtern Redirect permanent folgt die angesprochene Datei, danach die Umleitung. Der erste Eintrag sollte die Datei relativ zur Serverwurzel angeben, der zweite Eintrag sollte eine komplette URL sein (mit "http"). Andernfalls gibt es offenbar Probleme (die hier aufgeführte Methode funktioniert aber auf jeden Fall).
Redirect permanent /~www1test/redirect_test.html http://www.informatik.uni-frankfurt.de/~www1test/index.html
Redirect permanent /~www1test/redirect_extern.html http://www.informatik.uni-frankfurt.de/
Die Beispiellinks redirect_test.html und redirect_extern.html zum Austesten.

Umleitung über Links

Eine sehr einfache Methode, "umzuleiten", ist es, im Verzeichnis Links zu setzen. Ich gehe davon aus, daß die Leute, welche diese Methode anwenden wollen, wissen, was Links sind und wie sie funktionieren! Die einzig wichtige Information für diesen Personenkreis ist, daß in der .htaccess in ihrem Webverzeichnis der folgende Eintrag stehen sollte:
Options FollowSymLinks

Umleitung mit Hinweis und Verzögerung

Aus rechtlichen Gründen ist inzwischen eigentlich jeder Betreiber einer Internetpräsenz gezwungen, darauf hinzuweisen, daß man mit Aufrufen eines externen Links den Verantwortungsbereich des Anbieters verläßt und keine Verantwortung für die externen Inhalte trägt (ein typischer Fall von Juristenkram, den kein Mensch benötigt hätte.). Hier der Quellcode des Perl(CGI)-Skripts "umleitung.cgi", welches dies schnell und elegant erledigt. Der Aufruf läßt sich gut für jeden externen Link verwenden, wenn das Skript z.B. im eigenen CGI-Verzeichnis oder im Webverzeichnis liegt. Die Syntax ist: <a href="umleitung.cgi?url=webadresse>.
01 #!/usr/local/bin/perl
02 
03 use strict;
04 use CGI;
05 
06 my $q = new CGI;
07 my $url = $q->param ("url");
08 
09 print <<EOF;
10 Content-Type: text/html
11 
12 <html>
13 <head>
14 <meta http-equiv="Refresh" content="5; URL=http://$url">
15 <title>Automatische Weiterleitung</title>
16 </head>
17 <body>
18 <table width=600>
19 <tr>
20 <td valign=top><img src="/pics/RBI-Logo-klein.jpg" align=left hspace=10 vspace=10></td>
21 <td valign=top><font size="+1">Sie verlassen die Internetpräsenz der Johann-Wolfgang-Goethe Universität Frankfurt am
22 Main. Die Weiterleitung erfolgt in fünf Sekunden durch Ihren Browser.<p>
23 Falls Ihr Browser nicht automatisch weiterleitet, benutzen Sie diesen Link: <a href="http://$url">$url</a></font>
24 <p>
25 <font size="-1">
26 Trotz sorgfältiger inhaltlicher Kontrolle übernehmen wir keine Haftung
27 für die Inhalte externer Links. Für den Inhalt verlinkter Seiten sind
28 ausschließlich deren Betreiber verantwortlich.
29 </font>
30 </td>
31 </tr>
32 </table>
33 
34 </body>
35 </html>
36 
37 EOF
Und hier das Beispiel eines externen Links. Ohne den folgenden Eintrag in die Datei .htaccess geht allerdings gar nichts:
Options ExecCGI