Apache::Qpsmtpd(3pm)
π Apache::Qpsmtpd π
okay bestie, so this is Apache::Qpsmtpd β the manual page for it, fr. It's a mod_perl-2 connection handler for qpsmtpd. yes. Apache. doing SMTP. we love a crossover episode β¨
πΈ SYNOPSIS πΈ
here's the whole vibe, copy-paste ready:
Listen 0.0.0.0:25 smtp
AcceptFilter smtp none
## "smtp" and the AcceptFilter are required for Linux, FreeBSD
## with apache >= 2.1.5, for others it doesn't hurt. See also
## http://httpd.apache.org/docs/2.2/mod/core.html#acceptfilter
## and http://httpd.apache.org/docs/2.2/mod/mpm_common.html#listen
LoadModule perl_module modules/mod_perl.so
<Perl>
use lib qw( /path/to/qpsmtpd/lib );
use Apache::Qpsmtpd;
$ENV{QPSMTPD_CONFIG} = "/path/to/qpsmtpd/config";
</Perl>
<VirtualHost _default_:25>
PerlModule Apache::Qpsmtpd
PerlProcessConnectionHandler Apache::Qpsmtpd
# can specify this in config/plugin_dirs if you wish:
PerlSetVar qpsmtpd.plugin_dirs /path/to/qpsmtpd/plugins
PerlSetVar qpsmtpd.loglevel 4
</VirtualHost>
heads up queen:"smtp"and theAcceptFilterare required for Linux and FreeBSD with apache >= 2.1.5, and for everybody else it doesn't hurt. the links to the docs are right there in the comments, iykyk π«Ά
and listen, you can absolutely run multiple instances of Qpsmtpd on the same server, you just set this:
$ENV{QPSMTPD_CONFIG} = "USE-VIRTUAL-DOMAINS";
then inside each VirtualHost you point at that instance's config directory like so:
PerlSetVar qpsmtpd.config_dir /path/to/qpsmtpd/config
and boom π β several completely different configurations, all vibing on the same server at the same time. main character energy fr.
π¦ DESCRIPTION π¦
so what does this thing actually do? It implements a mod_perl/apache 2.0 connection handler that literally turns Apache into an SMTP server using Qpsmtpd. yes really. Apache said "i contain multitudes" π
It also lets you set single-valued config options β loglevel from up above is the example β by using PerlSetVar inside httpd.conf. cute, right?
β οΈ okay so important: this module should be considered beta software because it's not yet widely tested. not me being honest!! but ALSO β it's currently the fastest way to run Qpsmtpd, so if performance matters to you, bestie, this is the one you want. periodt. π
π BUGS π
Probably a few. yeah. we're being real here π
make sure you test your plugins carefully. like, actually. please. for me.
The Apache scoreboard (/server-status/) mostly works and shows connections, but ngl it could do with some enhancements specific to SMTP. it's giving "works but could be more iconic."
π AUTHOR π
Matt Sergeant, <matt@sergeant.org> π«Ά
Some credit goes to <mock@obscurity.org> for Apache::SMTP, which gave me the inspiration to do this. And <peter@boku.net> added the virtual host support. legends, all of them π
and that's the whole page, bestie!! this was Apache::Qpsmtpd(3pm) from the User Contributed Perl Documentation, running on perl v5.40.1 and dated 2025-03-21. slay, go configure your SMTP server inside a webserver like the absolute icon you are πΈπ
β¨
π¦ where this page comes from
- debian trixie: qpsmtpd 0.94-8
- ubuntu questing: qpsmtpd 0.94-8
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms