User since
2005-10-15
3
Artikel
BenutzerIn
Hallo zusammen,
ich hoffe das verstösst nicht gegen die Board-Regeln, wenn ich hier nach etwas frage, bevor ich die Perl- und mod_perl-Doku gelesen habe...
Ich bin gerade an einer Projektarbeit, bei der ich mit Hilfe von PHP, ShellScript und Apache2 (mod_rewrite, mod_ext_filter, mod_perl) ein "Proxy-Filter-Spiel" basteln möchte.
mod_perl brauche ich dabei eigentlich nur für ein kleines Script, das bei jedem http-Request ausgeführt wird und an Apache das Spieler-Level des Users als Variable übergibt (bzw. den Wert "0", wenn er noch nicht angemeldet ist).
Grob würde das so aussehen:
* überprüfen ob ein je Cookie mit einer Benutzer-ID und einem Passwort-Hash vorhanden ist
* kontrollieren ob in einer MySQL-DB die ID vorhanden und das Passwort dazu identisch mit dem aus dem Cookie ist
* Spieler-Level des Users als Wert der Umgebungsvariable "level" an Apache übergeben
Weil das Erlernen der mod_rewrite-, mod_ext_filter- und PHP-Grundlagen gerade sehr viel Zeit in Anspruch nimmt, möchte ich wenn möglich nicht noch ein ganzes Perl-Buch lesen um dieses Problem zu lösen.
Für einen Anfänger wie mich ist es jedoch schwierig, geziehlt die nötigen Informationen im Netz zu finden. Deshalb wollte ich erst mal hier fragen, ob mir jemand einen Tipp geben kann, wo ich Informationen oder ein Beispiel dazu finde, wie man (a) ein Perl-Script in die Apache-Config einbinden kann, (b) den Inhalt aus Cookies liest, ( c) Datenbankabfragen macht und (d) Variablen an Apache übergeben kann?
Für jegliche Hinweise bin ich sehr Dankbar
Gruss
Bernhard\n\n
<!--EDIT|bernhard|1129339502-->
User since
2003-08-04
14371
Artikel
ModeratorIn
User since
2005-10-15
3
Artikel
BenutzerIn
Vielen Dank für die schnelle Antwort.
Das Tutorial scheint genau die Informationen zu enthalten, die ich bis jetzt vergeblich gesucht habe.
Sehr schön auch, dass es explizit zu mod_perl 2.0 geschrieben ist. Ich werde mir gleich mal die 130 Seiten des Handouts ausdrucken und studieren. Die Folien bringen mir momentan wohl nicht so viel.
Beim Besuch auf perlseiten.renee-baecker.de ist mir zudem das Tutorial zu den Datenbanken aufgefallen. Das werde ich mir auch gleich anschauen, wenn es schon mal sowas in deutsch gibt.
Auch gefreut hab ich mich über das kurze Tutorial zum HTML::Parser. Sobald ich mal die grundlegendsten Kentnisse zu mod_perl habe, möchte ich mich unbedingt näher damit befassen. Für unser Filter-Proxy-Projekt wäre das Modul absolut genial.
Eine Frage habe ich trotzdem noch, die mir bisher leider niemand beantworten konnte: Ist es möglich, nur wenn eine bestimmte Bedingung erfüllt ist, aus der httpd.conf ein Perl-Script (mod_perl) zu Starten (ähnlich der RewriteCond von mod_rewrite)? Das hätte in meinem Fall den grossen Vorteil, dass auf das Starten des Scriptes verzichtet werden kann, sofern bereits ein bestimmtes Cookie mit einem Wert zwischen 1 und 123 vorhanden wäre (was bei den allermeisten Requests zutreffen würde).\n\n
<!--EDIT|bernhard|1129339831-->
User since
2003-08-04
5246
Artikel
ModeratorIn
soweit ich weiss, nicht; das tut aber i.d.R. kaum weh, wenn es immer gestartet wird, weil bei mod_perl die programme eh schon vorcompiliert im speicher gehalten werden, und wenn du die unterscheidung gleich am Anfang des Handlers machst, geht kaum was an laufzeit verloren. (PS: kenne mich allerdings mit mod_perl2 noch kaum aus, habe bisher nur mod_perl1 benutzt)
User since
2005-10-15
3
Artikel
BenutzerIn
In dem Fall werde ich gleich in den ersten Zeilen das Script beenden lassen, wenn es nicht benutzt wird. Solange es die Laufzeit nicht gross beeinflusst ist mir das auch recht.