Hey everyone!
Got a little problem...with CentOS / BQ / PHP 4.3.9 with the mail() function
I'm able to send mail using postfix directly from the command line, however when I try using the mail function of php no mail is being sent. This simple script works on all my older Cobalt Boxs.
<? if($action=="send") { $to = 'me@domain.dot'; $subject = 'the subject'; $message = 'hello'; $headers = 'From: me@domain.dot' . "\r\n" . 'Reply-To: me@domain.dot' . "\r\n" . 'X-Mailer: PHP/' . phpversion();
mail($to, $subject, $message, $headers); ?>
the queue looks like this.... Jun 14 11:47:45 bq0 sendmail[19390]: j5EFljEU019390: from=<>, size=1146, class=0, nrcpts=0, proto=ESMTP, daemon=MTA, relay=localhost [127.0.0.1] Jun 14 11:47:45 bq0 sendmail[19389]: j5EFljk1019389: j5EFljk2019389: return to sender: User unknown Jun 14 11:47:45 bq0 sendmail[19390]: j5EFljEW019390: from=<>, size=3858, class=0, nrcpts=1, msgid=200506141547.j5EFljk2019389@bq.ontarioservers.com, proto=ESMTP, daemon=MTA, relay=localhost [127.0.0.1] Jun 14 11:47:45 bq0 sendmail[19389]: j5EFljk2019389: to=postmaster, delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=32170, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (j5EFljEW019390 Message accepted for delivery) Jun 14 11:47:45 bq0 sendmail[19391]: j5EFljEW019390: to=admin, delay=00:00:00, xdelay=00:00:00, mailer=local, pri=34070, dsn=2.0.0, stat=Sent
I did a some googling and found a post http://forums.fedoraforum.org/showthread.php?t=27608
Any sujestons as what I should do .....I dont want to play with another script to get this done??....thanks in advance
On Tue, 14 Jun 2005, Jon McCauley wrote:
I'm able to send mail using postfix directly from the command line, however when I try using the mail function of php no mail is being sent. This simple script works on all my older Cobalt Boxs.
<? if($action=="send") { $to = 'me@domain.dot'; $subject = 'the subject'; $message = 'hello'; $headers = 'From: me@domain.dot' . "\r\n" . 'Reply-To: me@domain.dot' . "\r\n" . 'X-Mailer: PHP/' . phpversion(); mail($to, $subject, $message, $headers); ?>
the queue looks like this.... Jun 14 11:47:45 bq0 sendmail[19390]: j5EFljEU019390: from=<>, size=1146, class=0, nrcpts=0, proto=ESMTP, daemon=MTA, relay=localhost [127.0.0.1] Jun 14 11:47:45 bq0 sendmail[19389]: j5EFljk1019389: j5EFljk2019389: return to sender: User unknown Jun 14 11:47:45 bq0 sendmail[19390]: j5EFljEW019390: from=<>, size=3858, class=0, nrcpts=1, msgid=200506141547.j5EFljk2019389@bq.ontarioservers.com, proto=ESMTP, daemon=MTA, relay=localhost [127.0.0.1] Jun 14 11:47:45 bq0 sendmail[19389]: j5EFljk2019389: to=postmaster, delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=32170, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (j5EFljEW019390 Message accepted for delivery) Jun 14 11:47:45 bq0 sendmail[19391]: j5EFljEW019390: to=admin, delay=00:00:00, xdelay=00:00:00, mailer=local, pri=34070, dsn=2.0.0, stat=Sent
hmm, to me it looks like you did successfully send mail. it looks like the mail was sent to postmaster. mebbe check your aliases file to see who gets postmaster email.
try the following - using php pear and an smtp connection to localhost instead of trying to exec postfix and running amok of selinux.
$recipients = "maze@tcs.ii.uj.edu.pl";
$headers["From"] = "PHP at TCS php@tcs.ii.uj.edu.pl"; $headers["To"] = "Maciej Żenczykowski maze@tcs.ii.uj.edu.pl"; $headers["Subject"] = "PHP Test message subject.";
$body = "This is the test message text.";
//$params["host"] = "localhost"; //$params["port"] = "25"; //$params["auth"] = false; //$params["username"] = "user"; //$params["password"] = "password";
include("Mail.php"); // this is coming from /usr/share/pear // so make sure php is allowed to include files from // there if it's in safe mode // /etc/php.ini: // safe_mode_include_dir = /usr/share/pear/ // include_path = ".:/php/includes:/usr/share/pear"
$mail_object =& Mail::factory("smtp", $params); $mail_object->send($recipients, $headers, $body);
Am Di, den 14.06.2005 schrieb Jon McCauley um 18:11:
Got a little problem...with CentOS / BQ / PHP 4.3.9 with the mail() function
I'm able to send mail using postfix directly from the command line,
Not Postfix, the log below clearly shows Sendmail activity.
however when I try using the mail function of php no mail is being sent. This simple script works on all my older Cobalt Boxs.
<? if($action=="send") { $to = 'me@domain.dot'; $subject = 'the subject'; $message = 'hello'; $headers = 'From: me@domain.dot' . "\r\n" . 'Reply-To: me@domain.dot' . "\r\n" . 'X-Mailer: PHP/' . phpversion(); mail($to, $subject, $message, $headers); ?>
the queue looks like this....
The first log entry is missing, queue ID j5EFljEU019390.
Jun 14 11:47:45 bq0 sendmail[19390]: j5EFljEU019390: from=<>, size=1146, class=0, nrcpts=0, proto=ESMTP, daemon=MTA, relay=localhost [127.0.0.1] Jun 14 11:47:45 bq0 sendmail[19389]: j5EFljk1019389: j5EFljk2019389: return to sender: User unknown
The reason; more to be seen in the non delivery notification ...
Jun 14 11:47:45 bq0 sendmail[19390]: j5EFljEW019390: from=<>, size=3858, class=0, nrcpts=1, msgid=200506141547.j5EFljk2019389@bq.ontarioservers.com, proto=ESMTP, daemon=MTA, relay=localhost [127.0.0.1] Jun 14 11:47:45 bq0 sendmail[19389]: j5EFljk2019389: to=postmaster,
... sent to the postmaster.
delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=32170, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (j5EFljEW019390 Message accepted for delivery) Jun 14 11:47:45 bq0 sendmail[19391]: j5EFljEW019390: to=admin, delay=00:00:00, xdelay=00:00:00, mailer=local, pri=34070, dsn=2.0.0, stat=Sent
I did a some googling and found a post http://forums.fedoraforum.org/showthread.php?t=27608
Any sujestons as what I should do .....I dont want to play with another script to get this done??....thanks in advance
Better do as Maciej showed you and use Pear. It preserves you from several headaches using the mail() function directly. Also get clear which MTA you are really wanting to run; actually Sendmail seems to not be configured properly. And finally, using Apache to speak to the MTA directly will not work when SELinux is enabled.
Alexander
Better do as Maciej showed you and use Pear. It preserves you from several headaches using the mail() function directly. Also get clear which MTA you are really wanting to run; actually Sendmail seems to not be configured properly. And finally, using Apache to speak to the MTA directly will not work when SELinux is enabled.
Alexander
Thanks for the posts guys ;)
I found out Sendmail >8.12 has been re-modeled to tighten msp-queue rules.
Thus, internal processes send mails will go to msp-queue 1st. in /etc/mail/virtusrtable I removed @your-box-fqdn error:nouser No such user here
and every thing works now with out changing the mail() function
Best Regards, Jon McCauley
Am Di, den 14.06.2005 schrieb Jon McCauley um 20:41:
I found out Sendmail >8.12 has been re-modeled to tighten msp-queue rules.
Thus, internal processes send mails will go to msp-queue 1st. in /etc/mail/virtusrtable I removed @your-box-fqdn error:nouser No such user here
and every thing works now with out changing the mail() function
Best Regards, Jon McCauley
And now your postmaster gathers masses of spam, directed to not existing local users ;/
Alexander
Alexander Dalloz wrote:
Am Di, den 14.06.2005 schrieb Jon McCauley um 20:41:
I found out Sendmail >8.12 has been re-modeled to tighten msp-queue rules.
Thus, internal processes send mails will go to msp-queue 1st. in /etc/mail/virtusrtable I removed @your-box-fqdn error:nouser No such user here
and every thing works now with out changing the mail() function
Best Regards, Jon McCauley
And now your postmaster gathers masses of spam, directed to not existing local users ;/
Alexander
Your totally right, never dawned on me.....thanks for the reminder ;)
Best Regards, Jon McCauley