Adott egy több tucat weboldal megjelenését biztosító Debian GNU/Linux szerver, a szokásos felépítéssel: Apache, MySQL, PHP. Hogyan győződhetünk meg arról, hogy a PHP mail függvényén keresztül egyik weboldal sem küldi ki százával, esetleg ezrével a kéretlen reklámleveleket? Ha ez történik, a naplófájlokból - mint pédául a /var/log/mail.log - csak annyi látszik, hogy mennek kifelé a levelek, a feladójuk az a felhasználó, akinek a nevében az Apache webszerver fut - www-data -, viszont semmi sem utal arra az alkalmazásra, amely a leveleket generálja. Vajon melyik weboldal kódjában található az igazi tettes?
A megoldás a PHP 5.3 megjelenésével nagyon egyszerűvé vált. A /etc/php5/apache2/php.ini, illetve a /etc/php5/cli/php.ini fájlban helyezzünk el két sort a [mail function] blokkban, a sendmail_path alatt:
[mail function] sendmail_path = /usr/sbin/sendmail -t -i mail.add_x_header = On mail.log = /var/log/phpmail/phpmail.log
Hozzuk létre a /var/log/phpmail könyvtárat, abban pedig a phpmail.log fájlt. A tulajdonos legyen az Apache webszervert futtató felhasználó, és kapjon írási jogot a fájlra. Indítsuk újra a webszervert. Ezután minden egyes, a PHP mail() függvényének segítségével történő levélküldéskor egy új sor kerül a fájlba, a levelet küldő szkript merevlemezen található elérési útvonalával együtt. A többi már csak fantázia kérdése. :-)