Beispielwebseiten
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:
02.06.2003 CEST 15:00:43
© EJP
|
Webserver - Beispielseiten
Allgemein
Auf dieser und allen zusammenhängenden Seiten wird anhand eines Testbenutzers gezeigt, welche
Möglichkeiten der Apache Webserver den Benutzern des Fachbereichs Biologie und Informatik bietet.
Die wichtigsten Befehle und Einstellungsmöglichkeiten werden nicht nur vorgestellt, sondern auch
anwendungsorientiert erklärt. Es ist jederzeit möglich, sich die entsprechenden Quelldateien anzuschauen,
sie sich zu kopieren und für eigene Seiten als Vorlage zu nutzen.
Die Lektionen
Unter Download wird gezeigt, wie man ein Downloadverzeichnis ansprechend und
übersichtlich gestalten kann, ohne eigene HTML-Seiten kreieren zu müssen. Diese Arbeit nimmt uns der Webserver
mit den entsprechenden Einstellungen ab.
Unter Paßwortschutz wird vorgestellt, wie man einen durch Username und Paßwort
geschützten Webbereich einrichten kann. Damit kann man ausgewählten Personen Informationen über das
Web zukommen lassen (z.B. Zugriffsstatistiken der eigenen Seite oder private Fotogalerien).
Unter SHTML wird eine Server Side Include (SSI) HTML-Seite vorgestellt, welche
prinzipiell die gleichen Möglichkeiten wie PHP bietet. Da PHP mächtiger zu sein scheint, würde ich die
Verwendung von SHTML einschränken.
Unter PHP wird eine reine PHP-Seite aufgerufen. PHP ist eine sehr gut für Webanwendungen
geeignete Serverskriptsprache und ersetzt immer mehr CGI und PERL-Skripte.
Unter Redirect werden einige Varianten vorgestellt, wie man elegant Webseiten
"umbiegt". Sehr wichtig für Weiterleitungen außerhalb der Universität oder wenn man seine Webseiten umstrukturiert,
aber nicht möchte, daß alte Links verloren gehen.
Diese Seite
Auf der Startseite wird bereits die erste Möglichkeit des Servers demonstriert: Ein Menü auf der linken
Seite, welches für alle Webseiten identisch ist und einen Zeitstempel ("Last Modified") integriert. Erreicht
wurde dies durch den Einsatz von PHP, einer serverseitigen Skriptsprache, die im Gegensatz zu JavaScript auf
dem Server ausgeführt wird, bevor die Seite an den Browser verschickt wird. Dazu bedarf es aber einiger
Vorbereitungen. Insbesondere muß jeder Benutzer ein paar Optionen für den Webserver setzen, welches in der RBI
seit längerem möglich ist. Innerhalb des eigenen Webverzeichnisses (~username/WWW, wird aber mit
www.informatik.uni-frankfurt.de/~username ohne WWW im Netz angesprochen) kann jeder User eine Datei
namens .htaccess anlegen, in der dann die Steuerbefehle für den Webserver stehen. Diese Datei kann nicht
über das Web aufgerufen werden und taucht auch nicht in Webdirectorylistings auf. Sie ist eine "versteckte" Datei,
kann aber vom Benutzer auf Terminalebene angesehen und editiert werden.
Die Steuerdatei in diesem Verzeichnis umfaßt die folgenden Befehle:
AddType application/x-httpd-php .html
| Mit diesem Befehl werden .html Dateien (aber nicht .htm!) für den Server zu PHP-Dateien und werden
vor dem Absenden auf PHP-Befehle durchsucht. Hinter das .html können weitere Endungen geschrieben werden, das
ist aber normalerweise nicht nötig.
Quellcode dieser Seite
Einige Textzeilen wurden aus Gründen der Übersicht entfernt, was an den fehlenden Zeilennummern zu verifizieren ist.
01 <!--Die folgenden Zeilen sind nötig, der Titel kann je nach Seite angepaßt werden-->
02 <html>
03 <head>
04 <title>RBI - Startseite für Webbeispiele</title>
05
06 <!--Hier wird das Menü eingefügt-->
07 <?php
08 include './menue.html'
09 ?>
10
11 <!--Hier beginnt die eigentliche Seite-->
12
13 <td width=100% valign="top">
14
15 <h1 align=center>Webserver - Beispielseiten</h1>
16
17 <h2 align=center>Allgemein</h2>
24
25 <h2 align=center>Die Lektionen</h2>
41
42 <h2 align=center>Diese Seite</h2>
54
55 Die Steuerdatei in diesem Verzeichnis umfaßt die folgenden Befehle:
56 <?php
57 include './htaccess_php.quellcode'
58 ?>
59 Mit diesem Befehl werden <b>.html</b> Dateien (aber nicht <b>.htm</b>!) für den Server zu PHP-Dateien und werden
60 vor dem Absenden auf PHP-Befehle durchsucht. Hinter das <b>.html</b> können weitere Endungen geschrieben werden, das
61 ist aber normalerweise nicht nötig.
62
63 <h2 align=center>Quellcode dieser Seite</h2>
64 <p class="erps" align="justify">
65 Einige Textzeilen wurden aus Gründen der Übersicht entfernt, was an den fehlenden Zeilennummern zu verifizieren ist.
66 <?php
67 include './index.html.quellcode'
68 ?>
69
70 <h2 align=center>Quellcode der Menü-Datei</h2>
71 <p class="erps" align="justify">
72 Das folgende Listing zeigt die Datei <a href="menue.html">menue.html</a>, welche in jede HTML-Seite eingesourct wird.
73 <?php
74 include './menue.quellcode'
75 ?>
76
84
85 <!--Hier endet die eigentliche Seite-->
86 </td>
87 </tr>
88 </table>
89
90 </body>
91 </html> |
Quellcode der Menü-Datei
Das folgende Listing zeigt die Datei menue.html, welche in jede HTML-Seite eingesourct wird.
01 <meta name="description" content="Beispielseite zur Nutzung der Apache-Web-Server-Möglichkeiten">
02 <meta name="keywords" content="Apache, Webserver, Beispiel, User">
03 <meta name="author" content="Ernst">
04 <meta name="language" content="de">
05
06 <script language="JavaScript">
07 <!--
08 /* Dies sollte in der unteren Zeile den Standardtext ausgeben */
09 window.defaultStatus = "Beispiele zum Apache-Webserver";
10 //-->
11 </script>
12 <style type="text/css">
13 <!--
14 div.little {
15 font-family: Arial;
16 font-size: x-small;
17 text-align: center;
18 color: #0000FF;
19 }
20 div.littleleft {
21 font-size: x-small;
22 text-align: left;
23 color: #C04000;
24 }
25 div.littleright {
26 font-size: x-small;
27 text-align: right;
28 color: #C04000;
29 }
30 a.menu {
31 font-family: Arial;
32 font-size: smaller;
33 text-align: left;
34 color: #FF5F00;
35 }
36 address {
37 font-size: x-small;
38 text-align: left;
39 color: #C04000;
40 }
41 h1 {
42 font-family: serif;
43 font-size: xx-large;
44 font-weight: bold;
45 text-align: center;
46 }
47 p.erps {
48 font-family: serif;
49 font-size: medium;
50 text-align: justify;
51 }
52 -->
53 </style></head>
54
55 <!--Hier beginnt der Body-->
56 <body background="/pics/bg_marmorw.jpg" bgproperties="fixed" text="#000000" bgcolor="#FFFFFF" link="#FF0000" alink="#FF0000" vlink="#FF0000">
57
58 <!--Eine Tabelle für die Seitenaufteilung-->
59 <table width=100% cellpadding=10>
60 <tr>
61
62 <!--Hier beginnt das Menü auf der linken Seite-->
63 <td width=200 valign="top">
64 <div align="center"><img src="/pics/RBI-Logo-klein.jpg" border="0" alt="RBI-Logo">
65 <br clear=all>
66 <div class="little">Beispielwebseiten</div></div>
67
68 <!--Hier beginnen die Menüeinträge-->
69 <hr width=200 noshade size="1">
70 <a class="menu" href="/~www1test">Startseite</a><br>
71 <a class="menu" href="/~www1test">Download</a><br>
72 <a class="menu" href="/~www1test">Paßwortschutz</a><br>
73 <a class="menu" href="/~www1test">SHTML</a><br>
74 <a class="menu" href="/~www1test">PHP</a><br>
75 <a class="menu" href="/~www1test">Redirect</a><br>
76
77 <!--Emailangabe und Disclaimer-->
78 <hr noshade size="1">
79 <div class="littleleft">Verantwortlich für Inhalt und Design:</div>
80 <address>
81 Webmaster der Informatik<br>
82 <a href="mailto:webmaster@informatik.uni-frankfurt.de"><Email></a><br>
83 <a href="http://www.informatik.uni-frankfurt.de/RBI"><Homepage></a>
84 </address>
85 <p>
86 <div class="littleleft">Erklärung: Diese Seite gehört zu den Webseiten der RBI.
87 Für den Inhalt gelinkter Seiten außerhalb dieser Seiten sind die Autoren nicht verantwortlich.<br><br>
88 Zeitstempel:
89 <?php
90 print (date("d.m.Y T H:i:s", filemtime($_SERVER["SCRIPT_FILENAME"])));
91 ?>
92 </div>
93 <div class="littleright">© EJP</div>
94 <hr noshade size="1">
95 </td>
|
In den Zeilen 089 bis 091 wird der Zeitstempel eingefügt. Es handelt sich um einen php-Befehl, welcher mit
dem einleitenden Tag <?php begonnen wird und mit dem Abschlußtag ?> beendet wird. Innerhalb dieser
Markierungen können php-Befehle ausgeführt werden. In diesem Fall wird die letzte Änderung des aufrufenden Skripts (!)
in diese Datei eingefügt. Warum das aufrufende Skript? Da die Datei "menue.html" in jede andere HTML-Datei eingefügt
wird, würde es wenig Sinn machen, ihren eigenen Zeitstempel zu verwenden.
Sehr wichtig ist es, daß die eingefügte Datei in alle Dateien "perfekt" hineinpaßt. Es muß also darauf geachtet werden,
daß geöffnete Tags richtig geschlossen werden und keine Inkonsistenzen entstehen.
|