The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Apache::AntiSpam - AntiSpam filter for web pages

SYNOPSIS

  # in httpd.conf
  <Location /antispam>
  SetHandler perl-script
  PerlHandler Apache::AntiSpam
  </Location>

  # off course, filter aware!
  PerlModule Apache::Filter
  SetHandler perl-script
  PerlSetVar Filter On
  PerlHandler Apache::RegistryFilter Apache::AntiSpam Apache::Compress

DESCRIPTION

Apache::AntiSpam is a filter module to prevent e-mail addresses exposed as is on web pages. This module replaces e-mail addresses in web pages with one of the formats listed below. (you can choose one)

  • miyagawa-nospam@cpan.org

  • miyagawa at cpan dot org

This module is Filter aware, meaning that it can work within Apache::Filter framework without modification.

CONFIGURATION

  # choose either of two
  PerlSetVar AntiSpamFormat NoSpam
  PerlSetVar AntiSpamFormat Spaces

AntiSpamFormat indicates the way Apache::AntiSpam replaces the e-mail addresses.

NoSpam

replaces miyagawa@cpan.org with miyagawa-nospam@cpan.org. (default)

Spaces

replaces miyagawa@cpan.org with miyagawa at cpan dot org.

TODO

  • -nospam suffix should be configured (easy).

  • More logging with Apache::Log.

  • remove mailto: tags using HTML::Parser.

  • Make it easy to subclass so that the antispamming method can be configured.

ACKNOWLEDGEMENTS

The idea of this module is stolen from Apache::AddrMunge by Mark J Dominus. See http://perl.plover.com/AddrMunge/ for details.

Many thanks to Michael G. Schwern for kindly improving the matching speed of Email::Find.

AUTHOR

Tatsuhiko Miyagawa <miyagawa@bulknews.net>

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

SEE ALSO

Email::Find, Apache::Filter