#!/usr/bin/perl ##---------------------------------------------------------------------------- ## Email Hideout - /cgi-bin/nph-email V.2.0 ## Copyright(c) 1997-2001 J.DEGUEST(tm) Jacques Deguest ## Created 13/02/2001 ## Last Modified 13/02/2001 ## All Rights Reserved ## ## Permission to use, copy, modify, and distribute this software ## and its documentation for any purpose is strictly forbidden. ## The name of the author or the one of J.DEGUEST(tm) may not be used in ## advertising or publicity pertaining to distribution of the software ## without specific, written prior permission. ## ## THE AUTHOR AND J.DEGUEST(tm) DISCLAIMS ALL WARRANTIES WITH REGARD ## TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY ## AND FITNESS; IN NO EVENT SHALL AUTHOR NOR J.DEGUEST(tm) BE LIABLE FOR ANY ## SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER ## RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF ## CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN ## CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ##---------------------------------------------------------------------------- BEGIN { use 5.6.0; use strict; use CGI; }; { my $cgi = CGI->new(); my $path_info = $ENV{ 'PATH_INFO' } || $ARGV[ 0 ]; $path_info =~ s/^\/|\/$//g; my $email = ( split( '/', $path_info ) )[ 0 ]; $email = '' if( $email !~ /^(\S+)=(\S+)$/ ); $email =~ s/=/\@/; if( $email ) { print( STDOUT $cgi->redirect( -uri => "mailto:${email}", -status => '302 Found', -nph => 1, -expires => 'now', -pragma => 'no-cache' ) ); print( STDOUT < 302 Found

Found

The document has moved here.

EOT } else { print( STDOUT $cgi->header( -nph => 1, -pragma => 'no-cache', -expires => 'now', -status => '404 Not Found', -type => 'text/html', -charset => 'ISO-8859-1', ) ); print( STDOUT < 404 Not Found

Not Found

The requested URL was not found on this server.

EOT } exit( 0 ); } ## End of document =head1 NAME nph-email =head1 SYNOPSIS http://www.some-domain.com/cgi-bin/nph-email/user=domain.com =head1 DESCRIPTION The spammer use web bots to parse web page looking for e-mail address to add to their bulk mailing list. This software make it impossible for those crawlers to retrieve those e-mail addresses. =head1 USAGE First replace all the EA HREF="mailto:user@domaine.com"Euser@domaine.comE/AE style e-mail hyperlynk in your HTML documents with EA HREF="/cgi-bin/nph-email/user=domain.com"Euser at domain dot comE/AE Then, when someone clicks on the link, this non parse header perl script will redirect to a new location. This location will, actually, be the e-mail address correctly formatted. You can also test/debug it in command line the following way: ./nph-email user=domain.net =head1 COPYRIGHT Copyright (c) 2001 J.DEGUEST Jacques Deguest EFE =head1 SEE ALSO EFE for other usefull tools to fight spam. =cut