響應我只是有一個過濾器在httpd.conf我的位置標籤:錯誤的產生從PerlInputFilterHandler
<Location /testproj/A>
SetHandler modperl
PerlInputFilterHandler MyApache2::Test
</Location>
測試是PerlInputFilterHandler。
如果我按照這個過濾器代碼:
package MyApache2::Test10;
use strict;
use Apache2::Const qw(OK);
use Apache2::Filter();
use Apache2::RequestRec();
use Apache2::RequestIO();
sub handler {
my $f = shift;
#my $buf = '';
#while($f->read(my $tempbuf, 1024)) {
# $buf = $tempbuf;
#}
my $r = $f->r;
$r->content_type("text/html\n\n");
$r->print("welcome!!!");
return OK;
}
1;
它產生的反應 - 換句話說,它發出「歡迎光臨!」瀏覽器。
但是如果我下面的代碼(允許註釋代碼):
package MyApache2::Test10;
use strict;
use Apache2::Const qw(OK);
use Apache2::Filter();
use Apache2::RequestRec();
use Apache2::RequestIO();
sub handler {
my $f = shift;
my $buf = '';
while($f->read(my $tempbuf, 1024)) {
$buf = $tempbuf;
}
my $r = $f->r;
$r->content_type("text/html\n\n");
$r->print("welcome!!!");
return OK;
}
1;
這是行不通的。 「歡迎!!!」不會去瀏覽器 - '404'。
你能在這裏提出一些建議嗎?
非常感謝!
難道你在位置節有PerlInputFilterHandler MyApache2 :: Test,但你的包實際上是包MyApache2 :: Test10; ? – 2011-06-22 13:25:56