Aki futtatta már az Apache -ot chroot -ban az minden bizonnyal szembe került a levélküldés problémájával. Ez elsőre nem tűnik túl bonyolult dolognak, de azért mégis kicsit zűrösebb mint azt az ember várná...
Első lépésnek gyorsan kiderül, hogy nyilván kell egy /usr/bin/sendmail. A legjobb megoldás ha ide egy külön erre a célra készített (rendkívül egyszerű) programot használunk és azt is lehetőleg statikussan fordítva. Én a mini sendmail -t szoktam használni, de jókat hallani az nbSMTP -ről is.
Ezek után jön a meglepetés, hogy még mindig nem működik a levélküldés. Az ok az, hogy hiányzik a /bin/sh. Sajnálatos módon erre is szükség van, úgyhogy célszerű iderakni egy statikus bash -t.
Végül azt érdemes még megnézni, hogy a kimenő leveleknek ki a feladója (From:). Itt a user adott (web szerver usere), de a domain az nem feltétlenül az mint amit az ember elvárna. Ha állítani kell rajta akkor a legegyszerűbb a php.ini sendmail_path változójában beállítani a "-f email" paramétert.
Ehez kapcsolódik ez a program amit ugyan sose próbáltam, de egyszer még jól jöhet.
Érdemes elgondolkodni alternatív megoldásokon is, kell e mindenképp a mail() függvény? Ha nem akkor van két shell nélül is működő megoldás:
Én a PHPMailer -t használom már jó ideje, és csak ajánlani tudom.
Utolsó kommentek