You are viewing a plain text version of this content. The canonical link for it is here.
Posted to modperl@perl.apache.org by Perrin Harkins <ph...@gmail.com> on 2007/03/26 18:18:04 UTC

Re: internal_redirect & ModPerlRegist

On 3/26/07, Anthony Gardner <cy...@yahoo.co.uk> wrote:
> The script is running under ModPerlRegistry but nothing is happening.

What's your definition of "nothing" in this case?

>  So, am I right in now thinking, because my cgi script gets wrapped by a
> handler, it's considered a content handler?

Yes.  But see my other response -- you probably don't want
internal_redirect if you're trying to gather up the output.

>  As for the $r, it's coming from Apache->request() ............ but we are
> experiencing segfaults

Are you using mod_perl 2?  If so, you should be calling it like this:
$r = Apache2::RequestUtil->request;

The code you showed looked like it was trying to cache $r in some
other object, which you have to be really careful about.  You're
likely to accidentally keep one around and try to use the $r from a
previous request, especially if you get into subrequests and
internal_redirects.

- Perrin

Re: internal_redirect & ModPerlRegist

Posted by Anthony Gardner <cy...@yahoo.co.uk>.
Nothing means .......... not working. It's not entering the called script.

As for $r, the $self is actually a WWW::Utils package and some of the routines within that package call on Apache->request when running under MP. Nothing gets stored.

I know the called CGI script is passed $r but I thought it was better/cleaner to call it as I have.

I'm not at work now so will have to look at this further tomorrow. As long as I know I should be able to do it, then I have a goal.

I tried sub requests ......... from memory, sth like

$sub_rec = $r->lookup_file( '/path/to/script');
$rc = $sub_rec->run()

and although that entered the script, I didn;t get 200 returned. Plus, where would the content be? Stored in the $sub_rec?

Will look into this further tomorrow.

Thanks very, very much for all your help thus far .......... will get back to you ;)

-Ants

Perrin Harkins <ph...@gmail.com> wrote: On 3/26/07, Anthony Gardner  wrote:
> The script is running under ModPerlRegistry but nothing is happening.

What's your definition of "nothing" in this case?

>  So, am I right in now thinking, because my cgi script gets wrapped by a
> handler, it's considered a content handler?

Yes.  But see my other response -- you probably don't want
internal_redirect if you're trying to gather up the output.

>  As for the $r, it's coming from Apache->request() ............ but we are
> experiencing segfaults

Are you using mod_perl 2?  If so, you should be calling it like this:
$r = Apache2::RequestUtil->request;

The code you showed looked like it was trying to cache $r in some
other object, which you have to be really careful about.  You're
likely to accidentally keep one around and try to use the $r from a
previous request, especially if you get into subrequests and
internal_redirects.

- Perrin


 		
---------------------------------
 Now you can scan emails quickly with a reading pane. Get the new Yahoo! Mail.