|  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #15796 mail() doesn't work with qmail
Submitted: 2002-02-28 17:28 UTC Modified: 2002-05-23 13:05 UTC
From: ted at tedlove dot com Assigned:
Status: Not a bug Package: Mail related
PHP Version: 4.1.2 OS: RedHat 7.2
Private report: No CVE-ID: None
View Add Comment Developer Edit
Welcome! If you don't have a Git account, you can't do anything here.
You can add a comment by following this link or if you reported this bug, you can edit this bug over here.
Block user comment
Status: Assign to:
Bug Type:
From: ted at tedlove dot com
New email:
PHP Version: OS:


 [2002-02-28 17:28 UTC] ted at tedlove dot com
On my apache 1.3.23 and php 4.1.2 system the mail() function does not send mail, although the local mail system (QMail) is functioning in every other capacity.  I have tried the suggestions of changing the "sendmail_path" to:
(I have also tried the sendmail wrapper commands with -t and qmail-inject with -h)
This short script segment:

if (mail($to, $sub, $body)){
print ("MAIL SENT");
} else {
print ("MAIL DIED");

always returns "MAIL DIED".
Qmail logs and mail logs show nothing.


Add a Patch

Pull Requests

Add a Pull Request


AllCommentsChangesGit/SVN commitsRelated reports
 [2002-02-28 19:42 UTC]
The bug system is not the appropriate forum for asking support
questions. For a list of a range of more appropriate places to ask
for help using PHP, please visit
 [2002-05-23 12:48 UTC] ffeingol at webmasters-resources dot com
I've been having the exact same problem (4.1.2 and 4.2.1).  I did not post the bug yet because I can not determine for sure that it's a PHP problem.

It appears that PHP is not able to open the pipe to qmail.  I'm having the exact same problem with exec().
 [2002-05-23 13:05 UTC]
The servers run qmail and mail() has always worked just fine.
 [2002-05-23 13:17 UTC] ted at tedlove dot com
After many hours of looking at this problem, I finally did get it to work.  I believe the problem is in how you build the packages.  i.e. I built apache from source and qmail from RPM.
When I start apache with the following script, php mail() function works:
export QMAILMFTFILE=/tmp/.lists && apachectl start

I had seen the QMAILMFTFILE fix posted elsewhere, but didn't realize it needed to be in the APACHE path.  I have no idea why this fixes anything, but it does.
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Fri Apr 19 13:01:30 2024 UTC