Thread mod_perl Handler: Handler vor Download schalten? (3 answers)
Opened by bsnoop at 2006-04-12 19:40

bsnoop
 2006-04-12 19:40
#30021 #30021
User since
2006-03-30
25 Artikel
BenutzerIn
[default_avatar]
Moin,

ich bin gerade dabei mich mit Handlern unter mod_perl zu befassen. Jetzt würde ich gerne vor dem Download einer Datei (in diesem Fall mp3, gilt aber grundsätzlich für jeden anderen Download auch) den Handler arbeiten lassen und wenn er fertig ist soll der Request ganz normal weiterlaufen.

Nun habe ich also folgendes ausprobiert:

Handler:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
package Apache::Schnickschnack;

use strict;
use warnings;

use Apache::Const qw(:common);

sub handler {

# mache hier was zu machen ist

return OK;
}
1;


Directive in der httpd.conf:
Code: (dl )
1
2
3
4
5
PerlModule Apache::Schnickschnack
<Files ~ (\.mp3$)>
SetHandler perl-script
PerlResponseHandler Apache::Schnickschnack
</Files>


Das funktioniert leider nicht richtig.
Code: (dl )
# mache hier was zu machen ist
wird zwar korrekt ausgeführt, also beim Anfordern von mp3-Dateien wird der Handler aufgerufen und erledigt auch das was er soll, aber danach wird die Datei nicht ausgegeben. Der Antwort-Header sieht dann so aus:

Code: (dl )
1
2
3
4
5
6
7
8
Date: Wed, 12 Apr 2006 14:29:43 GMT
Server: Apache/2.0.49 (Linux/SuSE)
Content-Length: 0
Keep-Alive: timeout=15, max=99
Connection: Keep-Alive
Content-Type: audio/mpeg

200 OK


Was mache ich da falsch?\n\n

<!--EDIT|bsnoop|1144856464-->

View full thread mod_perl Handler: Handler vor Download schalten?