Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]3117[/thread]

Lebenszyklus: Wie lange leben Module?



<< |< 1 2 >| >> 17 Einträge, 2 Seiten
Gast Gast
 2004-06-17 15:50
#30769 #30769
Hallo Forum,

ich habe erfolgreich CGI und Mod_Perl auf einem Apache eingerichtet. Klappt alles wunderbar uach schön schnell.

Nur ist mir eines aufgefallen: Wenn ich Modul ändere und auf den Server hochlade (per FTP) so wird die Änderung nicht wirksam, erst wenn ich den Apache neustarte! Aber das kann ja kaum die Lösung sein...

Mir ist schon klar, das ein Skript (oder Modul) im Speicher resident bleibt (bei mod_perl) aber wann wird es denn neu interpretiert bzw. wie kann ich eine neu interpretation anstossen?

Any Ideas?

Grüße David
Gast Gast
 2004-06-17 16:00
#30770 #30770
Du kannst den laufenden Perl-Prozess killen und das Script neu starten.
Taulmarill
 2004-06-17 16:13
#30771 #30771
User since
2004-02-19
1750 Artikel
BenutzerIn

user image
bei mod_perl existiert keinen eigener perl prozess, für solche fälle wurde das modul Apache::Reload geschrieben.
$_=unpack"B*",~pack"H*",$_ and y&1|0& |#&&print"$_\n"for@.=qw BFA2F7C39139F45F78
0A28104594444504400 0A2F107D54447DE7800 0A2110453444450500 73CF1045138445F4800 0
F3EF2044E3D17DE 8A08A0451412411 F3CF207DF41C79E 820A20451412414 83E93C4513D17D2B
Gast Gast
 2004-06-17 16:17
#30772 #30772
Nicht nötig wenn Du das Script mit einem Handler ausstattest der auf ein Signal zum Neustart reagiert.
sri
 2004-06-17 16:35
#30773 #30773
User since
2004-01-29
828 Artikel
BenutzerIn
[Homepage] [default_avatar]
[quote=Dieter,17.06.2004, 14:17]Nicht nötig wenn Du das Script mit einem Handler ausstattest der auf ein Signal zum Neustart reagiert.[/quote]
Das erkläre bitte mal.
Gast Gast
 2004-06-17 16:48
#30774 #30774
Na gut - wenn ich so nett gefragt werde :)
Schreibe eine kleine Subroutine die, wie auch immer, ein absolutes die() oder exit() ausführt und packe eine z.B. 'action' Anweisung in den 'Event-Handler' des Scripts.
Sollte Bedarf bestehen ...
Schreibe eine END-Funktion und laß Dir damit eine Bestätigung über den Programmabbruch per eMail senden.
Ist doch einfach oder?

edit: @sri eingefügt\n\n

<!--EDIT|Dieter|1087476606-->
sri
 2004-06-17 16:49
#30775 #30775
User since
2004-01-29
828 Artikel
BenutzerIn
[Homepage] [default_avatar]
Und wo wäre der Vorteil gegenüber SIGHUP?\n\n

<!--EDIT|sri|1087476725-->
sri
 2004-06-17 20:09
#30776 #30776
User since
2004-01-29
828 Artikel
BenutzerIn
[Homepage] [default_avatar]
:blues:\n\n

<!--EDIT|sri|1087654495-->
Heromaster
 2004-06-17 20:58
#30777 #30777
User since
2003-08-05
220 Artikel
BenutzerIn
[default_avatar]
Für solche Fälle gibt es das Modul Apache::StatINC für Apache Version 1.3.x.
In der http.conf einfach diesen Eintrag machen:
Code: (dl )
PerlInitHandler Apache::StatINC

und in einem Startup-Script die Variable PERL5LIB setzen, wenn Du ein anderes Modulverzeichnis benutzt:
Code: (dl )
1
2
PERL5LIB=/www/apache/htdocs/mysite/modules;
export PERL5LIB

Damit werden die Module neu geladen, sobald sie geändert wurden.\n\n

<!--EDIT|Heromaster|1087491509-->
Derjenige, der zwei Hasen jagt, lässt einen zurück und verliert den anderen.
format_c
 2004-06-18 01:04
#30778 #30778
User since
2003-08-04
1706 Artikel
HausmeisterIn
[Homepage] [default_avatar]
@David: Schau dir mal Heromasters Post an. Der sieht brauchbar aus.

Gruß Alex
<< |< 1 2 >| >> 17 Einträge, 2 Seiten



View all threads created 2004-06-17 15:50.