Linux als SOHO-Server
für Linux- und Windows-Clients |
Kapitel:
|
Das optionale Modul: 'mod_perl'
ist ein Perl-Interpreter, der im Apache-Server einbettet
ist. Dadurch kann Perl-Code, wie z.B. CGI-Skripte,
deutlich schneller ausgeführt werden. Der Geschwindigkeitsgewinn ist damit zu
begründen, dass
mod_perl-Programme nur beim ersten Aufruf in den Speicher geladen und kompiliert werden.
Anschließend wird das Programm im Cache abgelegt. Erst wenn das Perl-Programm
verändert wird, wird es erneut kompiliert. Im Folgenden wird vorgestellt, wie das Modul: 'mod_perl' im Apache2-Server unter Debian (sarge) zu implementieren ist. Installation/KonfigurationDie Installation von 'mod_perl' gestaltet sich bei der Debian-Distribution am einfachsten mittels: 'apt-get install libapache2-mod-perl2'. Eventuell ist das neu installierte Modul mit 'a2enmod' noch zu aktivieren und der Apache2 ist neu zu starten. Auch sollte der Standard-Perl-Interpreter, der eigentlich bei der Basis-Installation schon mit installiert wird vorhanden sein. Danach kann die Konfiguration des Apache-Servers bezüglich 'mod_perl' beginnen. Im Prinzip gibt es, genau
wie bei CGI, zwei unterschiedliche Möglichkeiten um Perl-Programme
mittels 'mod_perl' auf dem Apache-Server zu unterstützen: Wie schon erwähnt ist in der default-Datei für den virtuellen Host: '/etc/apache2/sites-available/default' bereits ein CGI-Bereich vorgesehen, der für die mod_perl-Unterstützung erweitert werden kann:
Mit den gelb markierten Zeilen wird erreicht, dass alle Dateien mit der Extension '.pl' an das Modul: 'ModPerl::Registry' weitergeleitet werden. Möchte man, wie oben als zweite Möglichkeit beschrieben, Perl-Programme außerhalb des Verzeichnisses: '/cgi-bin/' verwenden, so ist in der Hauptkonfigurationsdatei: 'apache2.conf' die folgende Zeile frei zuschalten und um '.pl' zu erweitern:
In der default-Datei für den virtuellen Host: '/etc/apache2/sites-available/default' sind anschließend noch folgende gelb markierten Konfigurationen einzufügen:
Ab dem Verzeichnis: '/var/www/' werden alle Dateien mit der Endung '.pl' mittels 'mod_perl' unterstützt. AnmerkungenZum Test der mod_perl-Unterstützung des Apache-Servers, kann folgendes kleines Testprogramm in Perl genutzt werden:
Das Testprogramm sollte mit den notwendigen Dateirechten (chmod 755) versehen werden. Durch Aufruf eines Browsers sollte der Text: 'Hello World!; 'mod_perl 1.999' is working.' ausgeben werden. Auch zum Testen gut geeignet ist die Ausgabe mit: 'Apache::Status', welche einige Informationen über den Status des eingebetteten Perl-Interpreters ausgibt. Die Ausgabe wird dynamisch generiert, ähnlich wie bei 'server-status' oder 'server-info'. Damit der Status ausgegeben wird, müssen folgende Zeilen in der 'apache2.conf' eingefügt werden:
Ab Debian 4.0 (Etch) sollte 'PerlResponseHandler Apache2::Status' verwendet werden. Wird nun die die URL: 'httpd://<localhost>/perl-status' im Browser eingegeben, so sollte der Status ausgegeben werden. Weitere Infos
letzte Änderung: 02. Oktober 2007 |
Copyright © 2004 Norbert Eusterholz |