http://www.perlmonks.org?node_id=704431


in reply to Re: Failure to redirect when my CGI::Application powered site is used under mod_perl2
in thread Failure to redirect when my CGI::Application powered site is used under mod_perl2

I'm not familiar with those commands, but here is what they produce:

(Please excuse the formatting.)

lwp-request -m get -USsexd http://mail-scanning/cgi-bin/temp.cgi
skx@gold:~$ lwp-request -m get -USsexd http://mail-scanning/cgi-bin/te +mp.cgi LWP::UserAgent::new: () LWP::UserAgent::request: () LWP::UserAgent::send_request: GET http://mail-scanning/cgi-bin/temp.cg +i LWP::UserAgent::_need_proxy: Not proxied LWP::Protocol::http::request: () LWP::Protocol::collect: read 8 bytes LWP::Protocol::collect: read 387 bytes LWP::UserAgent::request: Simple response: OK GET http://mail-scanning/cgi-bin/temp.cgi User-Agent: lwp-request/5.810 GET http://mail-scanning/cgi-bin/temp.cgi --> 200 OK Connection: close Date: Thu, 14 Aug 2008 21:15:16 GMT Location: http://example.com/ Server: Apache/2.2.9 (Debian) PHP/5.2.6-2+b1 with Suhosin-Patch mod_ss +l/2.2.9 OpenSSL/0.9.8g mod_musicindex/1.2.2 mod_perl/2.0.4 Perl/v5.10 +.0 Content-Type: text/plain Client-Date: Thu, 14 Aug 2008 21:15:16 GMT Client-Peer: 192.168.1.10:80 Client-Response-Num: 1 Client-Transfer-Encoding: chunked

The second  lwp-request -m get -USsex http://mail-scanning/cgi-bin/temp.cgi

LWP::UserAgent::new: () LWP::UserAgent::request: () LWP::UserAgent::send_request: GET http://mail-scanning/cgi-bin/temp.cg +i LWP::UserAgent::_need_proxy: Not proxied LWP::Protocol::http::request: () LWP::Protocol::collect: read 8 bytes LWP::Protocol::collect: read 387 bytes LWP::UserAgent::request: Simple response: OK GET http://mail-scanning/cgi-bin/temp.cgi User-Agent: lwp-request/5.810 GET http://mail-scanning/cgi-bin/temp.cgi --> 200 OK Connection: close Date: Thu, 14 Aug 2008 21:16:29 GMT Location: http://example.com/ Server: Apache/2.2.9 (Debian) PHP/5.2.6-2+b1 with Suhosin-Patch mod_ss +l/2.2.9 OpenSSL/0.9.8g mod_musicindex/1.2.2 mod_perl/2.0.4 Perl/v5.10 +.0 Content-Type: text/plain Client-Date: Thu, 14 Aug 2008 21:16:29 GMT Client-Peer: 192.168.1.10:80 Client-Response-Num: 1 Client-Transfer-Encoding: chunked redirect<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> <html><head> <title>200 OK</title> </head><body> <h1>OK</h1> <p>The document has moved <a href="http://example.com/">here</a>.</p> <hr> <address>Apache/2.2.9 (Debian) PHP/5.2.6-2+b1 with Suhosin-Patch mod_s +sl/2.2.9 OpenSSL/0.9.8g mod_musicindex/1.2.2 mod_perl/2.0.4 Perl/v5.1 +0.0 Server at mail-scanning Port 80</address> </body></html>
Steve
--
  • Comment on Re^2: Failure to redirect when my CGI::Application powered site is used under mod_perl2
  • Select or Download Code

Replies are listed 'Best First'.
Re^3: Failure to redirect when my CGI::Application powered site is used under mod_perl2
by skx (Parson) on Aug 14, 2008 at 21:38 UTC

    To reply to myself it seems that I have two solutions:

    • Use CGI::Application::Plugin::Redirect
    • Update my code:
    sub redirectURL { my ( $self, $url ) = (@_); $self->header_type('redirect'); $self->header_add( -url => $url , -status => 301 ); return; }

    That redundent "return" seems to make things work properly in my demo and real application.

    I guess the return value of "header_add" is causing problems ..

    Steve
    --