use strict; use warnings; use CGI (); use CGI::Session(); use URI (); my $session = CGI::Session->new or die CGI::Session->errstr; my $uri = URI->new( CGI::url() ); $uri->query("page=1"); # might want to $uri->fragment(""), etc... print $session->header(-location => $uri, -status => 302 ); __END__ moo@cow[3505]~/bin>curl -i http://localhost/cgi/pm-764431-2.cgi HTTP/1.1 302 Found Date: Sun, 17 May 2009 05:20:44 GMT Server: Apache/2.2.3 (Unix) mod_fastcgi/2.4.2 Set-Cookie: CGISESSID=0ea36d11385258e787e3b31a31f23cb1; path=/ Location: http://localhost/cgi/pm-764431-2.cgi?page=1 Content-Length: 0 Content-Type: text/html; charset=ISO-8859-1