Please include the list on replies, so the archives are complete.
Quoting "John M. Dlugosz" <[EMAIL PROTECTED]>:
Adam Prime adam.prime-at-utoronto.ca |mod_perl mailing list| wrote:
For the Apache2::Request problem you're running:
use Apache2::Request;
$req = Apache2::Request->new($r);
@foo = $req->param("foo");
$bar = $req->args("bar");
and getting a segfault on new?
If I reduce it down to the first two lines only, I get the segfault.
If I reduce it to the first line only, I don't.
Are you running this as a handler, or through one of the CGI
emulation layers (ModPerl::PerlRun, or ModPerl::Registry for
example). you do
ModPerl::Registry.
In my apache2.conf file:
PerlModule ModPerl::Registry
<Location "/modperl/">
SetHandler perl-script
PerlHandler ModPerl::Registry
Options +ExecCGI
PerlSendHeader On
Allow from all
</Location>
Hmm, is there a way to find out whether these settings are applying to
the directory I think it is? /modperl/ should be applied to each
DocumentRoot, right?
correct.
also have
my $r = shift;
somewhere above that (and ideally use strict; as well) right?
No, just what it shows in the example.
This is your problem. Apparently if you call Apache2::Request->new
with an undefined object, it segfaults.
i ran this:
use Apache2::Request;
my $req = Apache2::Request->new($r);
print qq[Content-type: text/html\n\n];
print q[hi];
through registry, and saw
[Sat Jul 12 22:58:58 2008] [notice] child pid 5703 exit signal
Segmentation fault (11)
If you change that to
use Apache2::Request;
my $r = shift;
my $req = Apache2::Request->new($r);
print qq[Content-type: text/html\n\n];
print q[hi];
it should work. Unfortunately, it looks like the documentation for
ModPerl::Registry is kind of lacking on perl.apache.org, but what is
there is at
http://perl.apache.org/docs/2.0/api/ModPerl/Registry.html
Adam