----- Original Message -----

> Date: Tue, 18 Dec 2001 11:32:24 +0100
> From: Gerald Menzel <[EMAIL PROTECTED]>
> To: [EMAIL PROTECTED]
> Subject: Can't locate object method "dir_config" via package
>     "Apache::RegistryFilter"
>
> I have a problem with Apache::RegistryFilter. I can't get it to work.
> If I try to use it I allways get this error message:
>
> [error] Can't locate object method "dir_config" via package
> "Apache::RegistryFilter" ´
> (perhaps you forgot to load "Apache::RegistryFilter"?) at
> C:/Programme/Perl/site/lib/Apache/RegistryFilter.pm line 17.
>
> Excerpt of my perl.conf:
>
> PerlModule Apache::Filter
> PerlModule Apache::RegistryFilter
> <Files ~ "\.pl$">
>     PerlSetVar Filter on
>     SetHandler perl-script
>     PerlHandler Apache::RegistryFilter
>     Options +ExecCGI
> </Files>

Hi,
    You have to specify the chain of filters in httpd.conf.
Here's an example that takes the output of a script
"test.pl" and filters it through Apache::Reverse, which
simple reverses the order of the lines test.pl prints out.
In httpd.conf:

  PerlModule Apache::Filter
  PerlModule Apache::RegistryFilter
  PerlModule Apache::Reverse
  <Directory "/Apache/htdocs/filter">
     SetHandler perl-script
     PerlSetVar Filter on
     PerlHandler Apache::RegistryFilter Apache::Reverse
     Options +ExecCGI
  </Directory>

The script "test.pl" in the /Apache/htdocs/filter directory is
******************************************************
use strict;
print <<"END";
LINE 1
LINE 2
LINE 3
END
******************************************************
while the perl module Apache::Reverse is
******************************************************
package Apache::Reverse;
use strict;
use Apache::Constants qw(:common);
sub handler {
    my $r = shift->filter_register;
    my ($fh, $status) = $r->filter_input();
    $r->content_type("text/html");
    $r->send_http_header;
    print reverse <$fh>;
    warn "Status is $status";
    return OK;
}
1;
******************************************************
Does this work for you?

best regards,
randy kobes


Reply via email to