# Arbeitsmittel

I think there is a world market for maybe five computers.
Thomas Watson, Chairman of IBM, 1943

Da eine Webseite, ob nun statisch oder dynamisch, nicht ohne weitere Hilfsmittel auskommt, möchte ich Ihnen in diesem Kapitel verschiedene Werkzeuge näherbringen.

# Editoren

Im Grunde genommen können Sie selbst die umfangreichsten Webprojekte mit einem ganz einfachen Texteditor erstellen, solange dieser Dateien als reinen Text speichern kann. Ein solcher Editor ist z. B. Notepad unter Windows oder vi unter UNIX/Linux.

Notepad ist das Urgestein der Editoren unter Windows und lässt sich entweder über StartProgrammeZubehörEditor aufrufen oder über StartAusführen...notepad.exe OK ausführen. Bei der Speicherung sollten Sie dann als Dateityp Alle Dateien auswählen.

Unter UNIX/Linux gehört vi ebenfalls zum Standard-Repertoire. Die Steuerung erfolgt dabei jedoch nicht über die Maus, sondern lediglich mit der Tastatur. Mit verschiedenen Zeichen- und Tastenfolgen wird dann das Programm gesteuert. Es klingt jedoch einfacher, als es ist, da vi den Anfängen von UNIX entstammt, als es nur schreibmaschinenartige Konsolen gab. So wird z. B. der Cursor über die Tasten h, j, k und l bewegt, und mit der Escape-Taste wird zwischen dem Eingabe- und dem Kommandomodus umgeschaltet.

Obwohl viele Textverarbeitungsprogramme sehr komfortabel in der Bedienung sind, ist von diesen für das Programmieren abzuraten. Zum einen verwenden viele Programme ein proprietäres Dateiformat zum Speichern der Dokumente, und selbst wenn Sie eine Datei im Format Text oder ASCII speichern, kann das zu Fehlern führen. Dies betrifft vor allem Sonderzeichen wie deutsche Umlaute und ähnliche sprachenspezifische Zeichen.

Da Textverarbeitungsprogramme nicht verwendbar sind, und es doch schon ein bisschen mehr Komfort sein darf, reduziert sich die Palette der wirklich brauchbaren Editoren auf gerade mal eine Hand voll. Ein guter Editor sollte eine Syntax-Highlighting-Funktion aufweisen, die sich nicht nur auf eine Sprache beschränkt, und sollte außerdem die Zeilen- und Spaltennummer anzeigen. Letzteres ist gerade für die Fehlersuche äußerst hilfreich.

Unter Windows ist Textpad von Helios Software ein solches Programm. Der Vorteil ist, dass dieses Programm nicht mit unnötigen Funktionen überladen ist. Es bietet sowohl Syntax-Highlighting als auch das Anzeigen der Zeilen- und Spaltennummer. Das Syntax-Highlighting lässt sich für HTML, CSS, JavaScript, Perl und PHP konfigurieren und nachträglich erweitern.

Textpad finden Sie in der Version 4.7.3 auf der dem Buch beiliegenden CD‑ROM im Verzeichnis x:\win32\txpdeu473.exe.

Das Pendant zu Textpad auf UNIX/Linux-Systemen ist eMacs. Auch dieser Editor bietet Syntax-Highlighting und die Anzeige der Zeilen- und Spaltennummer. Genau wie vi gehört auch Emacs zur gängigen Grundausstattung eines UNIX/Linux-Systems.

Weit verbreitet sind auch die so genannten WYSIWYG-Editoren. Diese Abkürzung steht für »What you see is what you get« und bedeutet sinngemäß übersetzt »Was du siehst, ist das, was du bekommst«. Zu solchen Editoren gehört z. B. Microsofts FrontPage oder Macromedias Dreamweaver. Von diesen Editoren ist jedoch ebenfalls abzuraten. Zum einen unterstützen sie meistens nur HTML, CSS und JavaScript, zum anderen fügen sie in den Quelltext der mit ihnen erstellten Dateien oft unnötige Informationen ein. Darüber hinaus ist der Lernfaktor bei solchen Programmen natürlich sehr begrenzt, denn eine Seite zu »zeichnen« ist nicht vergleichbar mit dem Schreiben des HTML-Dokuments mit all seinen Tags und Attributen.

# Webserver

Ein Webserver ist nichts weiter als ein Computer mit einer meist persistenten Verbindung zum Internet, auf dem eine Software läuft, die Anfragen von anderen Computern abarbeitet. Die eigentliche Software wird auch HTTP-Daemon-Server genannt. Mittlerweile gibt es eine Vielzahl von HTTPD-Servern, und die meisten davon sind kostenlos im Internet verfügbar. Die bekanntesten Vertreter dieser Software-Gattung sind der Apache HTTPD-Server und der Internet Information Server von Microsoft.

Damit Sie nun Ihre Dateien nicht immer auf einem Server im Internet ablegen müssen, um diese zu testen und zu korrigieren, sollten Sie sich auf Ihrem eigenen Rechner einen solchen HTTPD-Server installieren.

Der Apache Server ist der verbreitetste HTTPD-Server überhaupt und wird auf ca. 55 Prozent aller Server im Internet eingesetzt. Der Grund dafür ist sicherlich, dass er für alle gängigen Betriebssystemumgebungen – angefangen bei UNIX/Linux, über Solaris bis hin zu Windows – verfügbar ist. Weitere Gründe, die für den Apache sprechen, sind der große Funktionsumfang dieses Servers, die einfache Handhabung sowie die hohe Zuverlässigkeit. Zudem ist er als Open Source im Internet verfügbar und somit für alle Anwender kostenlos.

Apache-Webseite: http://httpd.apache.org/

Natürlich hat es sich auch Microsoft nicht nehmen lassen, ebenfalls einen HTTPD-Server zu programmieren und diesen seinen Betriebssystemen beizulegen. Da einer jedoch anscheinend nicht genug ist, hat Microsoft gleich zwei Vertreter ins Feld geschickt. Dies ist zum einen der IIS, der mit Windows NT/2000/XP mitgeliefert wird, und zum anderen der Personal Webserver (PWS), der für Windows 98/98SE/ME ausgelegt ist. Vorteilhaft sind die einfache Installation und der Umstand, dass auch diese Server kostenlos verfügbar sind (sieht man einmal vom Kauf von Windows ab).

Eher seltener werden Sie auf OmniHTTPd von Omnicron Technologies oder auf den Xitami-Webserver von Xitami stoßen. Dies liegt vor allem daran, dass für den kommerziellen Einsatz eine Lizenz erworben werden muss; für Privatanwender ist die Verwendung jedoch vollkommen kostenlos. Der Xitami-Webserver ist allerdings lediglich in einer Lite-Version verfügbar. Generell gilt jedoch, dass beide Server sehr rudimentär mit Funktionen und Konfigurationsmöglichkeiten ausgestattet sind. Für einen kleinen Testserver auf dem eigenen Rechner sind sie jedoch weitgehend ausreichend.

OmniHTTPd-Webseite: http://www.omnicron.ca/

Xitami-Webseite: http://www.xitami.com/

Eine immer weitere Verbreitung weisen vorkonfigurierte Webserver auf, die zwar auf dem Apache HTTPD-Server basieren, jedoch bereits mit PHP, Perl, Python und MySQL ausgestattet sind und als installierbare Binär-Distribution im Internet verfügbar sind. Auch diese Server sind kostenlos. Die bekanntesten Vertreter sind:

XAMPP: http://www.apachefriends.org/

FoxServ-Webseite: http://www.foxserv.net/

The Saint WAMP: http://sourceforge.net/projects/yawamp/

# Perl

Perl ist eine ursprünglich von Larry Wall entwickelte Scriptsprache, die im Laufe der Zeit auf alle möglichen Systeme portiert wurde. Mittlerweile ist ähnlich wie bei Linux eine große Community entstanden, die zusammen mit Larry Wall die Sprache Perl weiterentwickelt und regelmäßig um neue Möglichkeiten erweitert.

Obwohl Perl anfangs als Arbeitserleichterung für Larry Wall gedacht war, verbreitete sich diese Sprache nach der Offenlegung des Quelltextes im Internet wie ein Lauffeuer und hat viele begeisterte Anhänger finden können. Es gibt jedoch auch Programmierer, die Perl gegenüber abgeneigt sind und gerne den Vergleich mit dem Lama heranziehen: Es stinkt, es ist hässlich, und es spuckt einen gerne mal an. Dies geben auch einige Anhänger von Perl zu.

Perl ist mittlerweile in der Version 5.8.8 verfügbar und im Internet kostenlos erhältlich.

Webseiten: http://www.perl.com/ und http://www.activestate.com/

# PHP

PHP (Abkürzung für »Personal Homepage Tools«) war ursprünglich lediglich eine Sammlung von mit Perl programmierten Scripts zum Administrieren der Protokoll-Dateien eines Webservers. Rasmus Lerdorf hat diese damals ebenfalls im Internet zur Verfügung gestellt.

Kurz darauf wurde Zum gleichen Zeitpunkt wurde auch die Bedeutung der Buchstaben PHP in »PHP: Hypertext Preprocessor« geändert.PHP jedoch zu einer neuen, eigenständigen Scriptsprache, die die verschiedenen Vorzüge von Perl und anderen Sprachen in sich vereinen sollte und diese Aufgabe auch mit Bravour erfüllt.

Inzwischen ist die Version 5.1.4 von PHP im Internet zum Download vorhanden.

PHP-Homepage: http://www.php.net/

# MySQL

MySQL ist ein SQL-kompatibles Open Source-Datenbanksystem. Obwohl es ein sehr einfaches System ist, wird es gerade im Internet besonders gern und häufig eingesetzt, weil es nicht so sehr überladen wie viele andere Vertreter und als Open Source-Software natürlich kostenlos ist.

Wie die meisten Open Source-Projekte ist auch MySQL unabhängig vom eingesetzten Betriebssystem und somit sowohl für UNIX/Linux als auch Windows verfügbar. Ein professioneller bzw. kommerzieller Einsatz dieses Systems ist jedoch mit dem Erwerb einer Lizenz verbunden.

Webseite: http://www.mysql.com/ und http://www.mysql.de/

# phpMyAdmin

Eines der hilfreichsten Projekte auf Basis von PHP ist phpMyAdmin, das als Oberfläche zur Administration von MySQL-Datenbanken über einen Webserver dient. Viele Internet Service Provider haben phpMyAdmin bereits vorinstalliert, sodass es den Endkunden zur Verfügung steht.

phpMyAdmin als Frontend zur Administration von MySQL über einen Webserver Abbildung 1.1: phpMyAdmin als Frontend zur Administration von MySQL über einen Webserver

Da phpMyAdmin – wie der Name schon sagt – auf PHP basiert, muss natürlich PHP auf dem Server installiert sein, damit Sie phpMyAdmin zur Administration verwenden können. Aktuell ist die Version 2.8.1 verfügbar.

Webseite: http://phpmyadmin.sourceforge.net/