Wenn wir einen Apache auf einem Unix-Server fahren,
können wir das über den "htaccess"-Mechanismus des apache-Servers machen.
Eine Kennung und ein gecryptetes Passwort reicht aus, dies wird den
Vereinsmitgliedern per Post mitgeteilt.
Gecryptete Passwörter kann man z.Bsp. mit
perl -e 'print crypt("PASSWORT","zx")'
erzeugen.
Im sinnvollen Fall erlaubt uns der Web-Server mit den
Direktiven
AllowOverride AuthConfig
AccessFileName .htaccess
die lokalen Einstellungen
über eine
.htaccess
-Datei im Suchpfad zu den
aufzusuchenden Dateien. Wir machen hier ein Verzeichnis, und
legen die Datei
.htaccess
hinein.
(Da Passwörter übertragen werden, sollte man das ganze über
einen secure-Server abwickeln).
Sei "Verein" die Kennung, und "Probe" das Passwort.
Wir haben dann die Dateien
- .htaccess
Hier stehen die Angaben, welche Authentifizierungstechnik
verwendet werden soll, und ergänzende Angaben dazu. In
unserem Fall also:
AuthType Basic
einfache Authentifizierung
AuthUserFile keys
keys ist unser File mit den Authentifizierungsinformatioen
AuthName "Unser Verein soll schneller werden"
Ist der Schirftzug, der angezeigt wird, und
require valid-user
ist die verlangte Validierung
- keys
Der Name ist beliebig. Der Webserver sollte die Datei
lesen können, aber sonst möglichst niemand!
Hier stehen jeweils
Kennung
:verschlüsseltes
Passwort
, ein Paar pro Zeile. Die Kennung ist
beliebig, sie hat mit den Unix-Kennungen nichts zu tun.
- index.html
Die Verzeichnis-Leitdatei
Bei Problemen ist übrigens as apache-errorlog mit Meldungen wie
[Thu Jan 25 13:24:44 2001] [error] [client 128.176.182.146] (2)No such file or directory: Could not open password file: /u/lammers/WWW/EDU/ss01/Webserver/Projekt1/Demo1/keys
sehr hilfreich!
Unser Verein hat wenige als 100 Mitglieder, also passen alle
Namen noch ohne Probleme auf eine Webseite.
Wir verwenden 2 einfache Formulare:
-
Eine Gesamtübersicht, in der man
- Einen Eintrag zum weiteren bearbeiten auswählen kann.
- Einen neuen Eintrag machen kann.
- Eine Mail (ggf. später auch eine SMS) an jeden einzelnen
senden kann.
- Eine Mail (später Mail bzw. SMS) an alle schicken kann.
-
Eine Datenerfassungsseite, in der man mindestens
angeben bzw. ändern kann:
- Name und Vorname, ggf. Adresse und Telefonnummer
- Email
- Handy-Nummer (für SMS)
- Funktion im Verein
Die Daten sollen zunächst per Email an den Listenbearbeiter gehen,
der sie dann korrigieren muss.
Die erste dieser Seiten können wir im sehr einfachen Fall direkt
mit einem (html-)Editor bearbeiten:
Mitglieder.html. Die zweite
müssen wir aber sicher generieren, da dort ja schon die
vorhandenen Daten stehen müssen. Weil das dann sozusagen
abfällt, können wir auch die Gesamtliste
generieren lassen.
Erstmal eine einfache Lösung:
Wir wählen als Struktur in der Datei der
Vereinsmitglieder-Daten:
- pro Mitglied eine Zeile
- In der Zeile sind die einzelnen Felder durch
::
getrennt
- Die Felder bedeuten der Reihe nach: ID, Nachname,
Vorname, Email, Handy, Funktion, weitere Angaben
Die ID muss übrigens konsistent generiert werden. Wir legen
dafür fest, das in der ersten Zeile (mit der ID 0) statt des
Namens die letzte vergebenen ID steht. Das Datum mit der ID 0
wird dann auch nie angezeigt. Einlesen, aufsplitten und
generieren von Einzel- und Gruppendarstellung erledigt
VereinsDaten.pl.
Das Bearbeiten der "Datenbank" besorgt der Mailadressat von Hand.