intro wiki download guestbook contact

Installation von WebTek

WebTek ist ein Web- Framework für mod_perl2 in Apache2. Hier soll kurz beschrieben werden, welche Software nötig ist, um WebTek laufen lassen zu können. Diese Anleitung richtet sich an Unix-Anwender (Ein Anleitung fuer Windows folgt noch). Getestet wurde es unter OS X und Linux. Zusammengefasst benötigen wir:

  • perl 5.8
  • apache2
  • mod_perl2
  • libapreq2
  • eine Datenbank und die dazugeörigen Perl Driver
  • eine Handvoll Perl Module

Perl

Perl (Version > 5.8) von http://www.perl.org runterladen und einfach mit den Standard Optionen installieren. Alle benoetigten Module installieren wir gleich ueber CPAN:


cpan install base
cpan install Date::Parse
cpan install Date::Format
cpan install JSON::XS
cpan install Class::ISA

Weiters noch Optional (nur fuer gewisse Teile notwendig


cpan install POE
cpan install Text::Textile
cpan install Cache::Memcached
cpan install IO::Socket::Inet

Zu den Datenbank- Treibern kommen wir spaeter noch.

Ps: Noch ein kleiner Hinweis. Wer vorhat, WebTek im prefork Modus laufen zu lassen (siehe unten), der kann Perl ohne den Thread Support kompilieren/installieren, das bringt anscheinend 15% Performace.

Apache2

Apache von http://httpd.apache.org runterladen. Beim Kompilieren kann man angeben, ob die Apache Prozesse gethreaded oder preforked laufen sollen (eine genau Beschreibung, was der Unterschied zwischen diesen beiden Varianten ist, findet sich unter http://httpd.apache.org/docs/2.2/mpm.html ). Kurz gesagt: Wer Speicher sparen will nimmt die worker (=Threads) Version, ansonnsten ist die prefork Variante zu bevorzugen, da diese ein wenig schneller arbeitet.

Wer sich für die Threads entschieden hat ruft das ./configure script wie folgt auf:


./configure --with-mpm=worker

und wer Prefork bevorzugt sagt:


./configure --with-mpm=prefork

dann einfach ganz normal:


make
make install 

aufrufen.

mod_perl2

mop_perl erlaubt es perl Prozesse im Apache laufen zu lassen. mod_perl2 einfach von http://perl.apache.org/dist/mod_perl-2.0-current.tar.gz runterladen und wie folgt installieren:


perl Makefile.PL MP_APXS=/path/to/apxs
make
make test
make install

Eine genauere Anleitung findet sich unter http://perl.apache.org/docs/2.0/user/install/install.html.

libapreq2

Libapreq ist eine Library, welche für das Parsen (=Auswerten) eines Requests vom Client, zuständig ist (wenn z.B. wer ein Formular an WebTek schickt). Downloaden kann man diese unter apreq. Diese dann entpacken und wie folgt installiern:


perl Makefile.PL --with-apache2-apxs=/path/to/apache2/bin/apxs
make
make test 
make install

Datenbank

Als Datenbank nimmt man am besten Mysql. Am besten schon eine Vor- compilierte Version von http://dev.mysql.com runterladen und installieren. Nachdem die Datenbank installiert ist, müssen wir noch zwei Packete installieren, damit Perl mit der Datenbank sprechen kann. Diese heissen DBI und DBD::mysql (zu finden unter: http://search.cpan.org/~timb/DBI-1.50 bzw. http://search.cpan.org/~capttofu/DBD-mysql-3.0003 ) und müssen nach der jeweiligen Installationsanleitung installiert werden.

Weiters benoetigen wir auch noch die Perl- Driver:


cpan install DBI
cpan install DBD::mysql

Binary Packages

Bis jetzt wurde mal der komplizierte Weg beschrieben, aber in der heutigen Zeit gibt es ja zum Glück schon für alles fertige Packete :)
Also hier die Liste der Packete, welche in einem Debian System installiert werden müssen. Für andere Linux Distributionen sollten die Packete ähnlich heissen:


apt-get install apache2
apt-get install libapache2-mod-perl2
apt-get install libapache2-mod-apreq2
apt-get install libapache2-request-perl
apt-get install mysql-server
apt-get install mysql-client
apt-get install libtimedate-perl
apt-get install libcache-memcached-perl
apt-get install libpoe-perl
cpan install JSON::XS

WebTek

So nachdem wir jetzt mal das ganze Environment aufgesetzt haben, kommt zum Schluss noch WebTek an die Reihe. Dieses kann man von hier runterladen. Das Verzeichnis WebTek einfach irgendwo ablegen (z.B. einfach im Home Verszeichnis).

Als letztes müssen wir noch die Datenbank initialisieren. Dazu einfach das mysql.sql (oder auch das postscript.sql) script im WebTek/lib Verzeichnis in Mysql ausführen.


mysql -u root -p < /path/to/WebTek/lib/mysql.sql

Dieses erstellt eine Datenbank webtek, und einen User webtek mit Passwort webtek. Des weiteren wird auch die Session und Cache Tabelle erzeugt.

Und jetzt kanns schon losgehen, z.B. mit dem [tutorial|Tutorial].