Heute musste ich auf einem Webserver bei einem virtuellen Host den Mailversand über die mail()-Funktion von PHP unterbinden. Normalerweise hätte ich nun in der
php.ini die Funktion in die Konfigurationsoption
disable_functions eingetragen. Da die
php.ini auf diesem Server jedoch für alle virtuellen Hosts gilt und diese Einschränkung somit alle Kunden betroffen hätte, schied diese Möglichkeit aus.
Daher habe ich versucht, diese Konfigurationsoption in der VirtualHost-Konfiguration mittels
php_admin_value zu setzen. Leider hatte dies jedoch keine Auswirkungen. Wie ich später dann in der
PHP-Dokumentation herausgefunden habe, lässt sich diese Option ausschließlich in der
php.ini einstellen.
Nach kurzer Überlegung kam mir dann doch noch die rettende Idee: Über die Option
sendmail_path lässt sich der Pfad von
sendmail einstellen. Gibt man hierfür dann das
Nulldevice an, landet die Mail im Nirgendwo.
php_admin_value sendmail_path "/dev/null"
Zugegeben, es ist keine schöne Lösung, aber in diesem Fall vermutlich die einzig mögliche.