Thread Einsteigerprobleme mod_perl2 (7 answers)
Opened by xtomcatx at 2008-09-12 16:05

xtomcatx
 2008-09-12 16:05
#114566 #114566
User since
2006-08-27
31 Artikel
BenutzerIn
[default_avatar]
Hallo,
ich habe einige Probleme beim Entwicklen mit mod_perl, vermutlich Probleme, die fast jeder schon mal hatte:

mod_perl ist für ein Verzeichnis aktiviert:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
<VirtualHost [...]
PerlOptions +Parent +ParseHeaders
PerlSwitches -I/[...]/modules
<Files ~ "\.(pl|cgi)$">
SetHandler perl-script
#PerlResponseHandler ModPerl::PerlRun
PerlResponseHandler ModPerl::Registry
PerlInitHandler Apache2::Reload
Options +ExecCGI
</Files>
</VirtualHost>


Zuerst hatte ich nur ModPerl::Registry verwendet, damit gab es nur Probleme, weil das kompilierte Skript ja gecachet wird und nur dann neu kompiliert wird, wenn das Hauptprogramm sich ändert. Irgendwann habe ich dann die Direktive PerlInitHandler entdeckt, die in Verbindung mit Apache2::Reload bewirken sollte, dass auch Änderungen an anhängigen Modulen bemerkt werden und zur Neukompilierung führen. Funktioniert im großen und ganzen auch, doch manchmal tritt folgende Situation ein:
Ich restarte den Apache
ich habe im Modul X in Zeile 23 einen Fehler. => Fehlermeldung, at Line 23
Ich behebe den Fehler und habe den nächsten in Zeile 36. => Fehlermeldung, at Line 36 (meistens, manchmal wird die Änderung scheinbar gar nicht bemerkt)
Aktualisiere ich die Seite jetzt, wird z.B. fünfmal Fehlermeldung Zeile 36 angezeigt und plötzlich wieder ein mal Zeile 23. Woran kann das liegen?

Kann ich die Cacherei fürs Entwicklen nicht temporär ganz abschalten, ohne auf mod_perl zu verzichten?

Das passiert auch mit dem ResponseHandler ModPerl::PerlRun und wie ihr euch vorstellen könnt, macht das das Entwicklen nicht einfacher, denn manchmal wird die alte Fehlermeldung auch beim ersten Refresh angezeigt.

Browsercache ist auszuschließen.

View full thread Einsteigerprobleme mod_perl2