1

I'm having trouble getting my local XAMPP server to send emails via my remote SMTP server.

In PHP, if I put:

$headers  = "From: dan@fromdomain.com\r\n";
mail('dan@todomain.com', 'test', '', $headers);

Then this works. However, if I don't specify the header, ie.:

mail('dan@todomain.com', 'test', '');

Then this fails. The sendmail.log file says:

smtpstatus=554 smtpmsg='554 Message refused.' errormsg='the server did not accept the mail' exitcode=EX_UNAVAILABLE

I've tried changing my sendmail command in my php.ini to:

sendmail_path = "C:/xampp/sendmail/sendmail.exe -t -f dan@fromdomain.com"

but this doesn't work either.

Thanks for any help with this, Dan.

ps. this is on windows.

Dan
  • 203
  • 3
  • 12
  • dan, not the solution, but there any reason why you must use sendmail? i'd used to use sendmail , but i find the configuration a bit of headache, try postfix instead. – The Unix Janitor Apr 17 '10 at 11:41

1 Answers1

1

From the PHP mail() documentation:

When sending mail, the mail must contain a From header. This can be set with the additional_headers parameter, or a default can be set in php.ini.

As far as your sendmail command line, I believe the -f directive and the address need to be together. i.e.:

-fdan@fromdomain.com

Peace, Tom

TomWilsonFL
  • 185
  • 1
  • 2
  • 8