$tmp = $cgi->param('l'); while (1) { $response = $agent->head($tmp); $response = $agent->get($tmp) if($response->code == 501); if ( $response->code == 301 || # Moved permanetly $response->code == 302 || # Found, temporary other location $response->code == 307 ) # Temporary redirect { $tmp = $response->header("Location"); } last if($response->code == 200); last if($response->code == 404); } $dead = 1 if($response->code == 404);