--- a/PhishTag.pm
+++ b/PhishTag.pm
@@ -24,6 +24,7 @@
 use Errno qw(EBADF);
 use Mail::SpamAssassin;
 use Mail::SpamAssassin::Logger;
+use URI::Encode qw(uri_encode uri_decode);
 
 use vars qw(@ISA);
 
@@ -195,11 +196,13 @@
   my $pristine_body=\$pms->{msg}->{pristine_body};
   #dbg("PRISTINE>>\n".$$pristine_body);
 
+  my $newuri;
   my $uris = $pms->get_uri_detail_list();
   #rewrite the url
   while (my($uri, $info) = each %{$uris}) { 
       if(defined ($info->{types}->{a})){
-	  $$pristine_body=~s/$uri/$pms->{PHISHTAG}->{uri}/mg;
+	  $newuri = uri_encode("$pms->{PHISHTAG}->{uri}?orig_uri=$uri");
+	  $$pristine_body=~s/$uri/$newuri/mg;
       }
   }
   dbg("PRISTINE>>\n".$$pristine_body);
