in reply to Problem with CGI.pm redirects

Your debug prints confuse the webserver. Everything that you print to STDOUT goes to the client, and if the client does not see a HTTP header first, it assumes that it will get served plain text. Which is what happens with your output - at the bottom, there is the correct and expected Status: 302 line and the new location header.

To solve this, don't output anything before printing the Status: line.

Replies are listed 'Best First'.
Re^2: Problem with CGI.pm redirects
by moritz (Cardinal) on Jun 06, 2011 at 14:49 UTC

    ... or print your debug output to STDERR. warn does that by default.

    If you use Apache, the STDERR output of the script can be found in the error.log of your virtual host (typically /var/log/apache2/yourhost/error.log).

      Many thanks both, works a treat! And the tip about warn is very useful.

      Stevee