How to setup an SMTP server on Mac OS X?

╄→尐↘猪︶ㄣ 提交于 2020-06-24 12:23:12

问题


I work with PHP and I have mamp on my machine. I would like to send emails within my PHP code:

<?php
 $to = "recipient@example.com";
 $subject = "Hi!";
 $body = "Hi,\n\nHow are you?";
 if (mail($to, $subject, $body)) {
   echo("<p>Message successfully sent!</p>");
  } else {
   echo("<p>Message delivery failed...</p>");
  }
 ?>

How can I configure a mail server for free on my mac machine ?


回答1:


The following did the job. See source here.

  1. Edit file: sudo emacs /System/Library/LaunchDaemons/org.postfix.master.plist.
  2. Add <key>RunAtLoad</key> <true/> <key>KeepAlive</key> <true/> before the closing </dict> tag.
  3. Run sudo postfix start.

Check that SMPT is running: telnet localhost 25




回答2:


Option 1:

CommandLineFu had this one liner to run an SMTP server on port 25:

sudo python -m smtpd -n -c DebuggingServer localhost:25

This will run a fake smtp server on your local machine. It won't send anything, but will dump it to the console.

Option 2:

Incase, you are not comfortable with command line then FakeSMTP is a Free Fake SMTP Server with GUI for testing emails in applications easily. It is written in Java. It is very nice and easy to use.

[http://nilhcem.com/FakeSMTP/][1]

Kindly upvote the answer if it help :)




回答3:


Try this - http://email.about.com/od/emailprogrammingtips/qt/PHP_Email_SMTP_Authentication.htm

and if you want an SMTP server to send mail from on OSX, this may help (havent actually tried it, but seems like it could do the job) - http://email.about.com/cs/sendmail/gr/sendmail_enable.htm

Hope that helps!




回答4:


Are there any smtp server i can install on linux mac ?

Sending Mail from PHP Using SMTP Authentication - Example:

<?php
 require_once "Mail.php";

 $from = "Sandra Sender <sender@example.com>";
 $to = "Ramona Recipient <recipient@example.com>";
 $subject = "Hi!";
 $body = "Hi,\n\nHow are you?";

 $host = "mail.example.com";
 $username = "smtp_username";
 $password = "smtp_password";

 $headers = array ('From' => $from,
   'To' => $to,
   'Subject' => $subject);
 $smtp = Mail::factory('smtp',
   array ('host' => $host,
     'auth' => true,
     'username' => $username,
     'password' => $password));

 $mail = $smtp->send($to, $headers, $body);

 if (PEAR::isError($mail)) {
   echo("<p>" . $mail->getMessage() . "</p>");
  } else {
   echo("<p>Message successfully sent!</p>");
  }
 ?>

Sending Mail from PHP Using SMTP Authentication and SSL Encryption - Example:

<?php
 require_once "Mail.php";

 $from = "Sandra Sender <sender@example.com>";
 $to = "Ramona Recipient <recipient@example.com>";
 $subject = "Hi!";
 $body = "Hi,\n\nHow are you?";

 $host = "ssl://mail.example.com";
 $port = "465";
 $username = "smtp_username";
 $password = "smtp_password";

 $headers = array ('From' => $from,
   'To' => $to,
   'Subject' => $subject);
 $smtp = Mail::factory('smtp',
   array ('host' => $host,
     'port' => $port,
     'auth' => true,
     'username' => $username,
     'password' => $password));

 $mail = $smtp->send($to, $headers, $body);

 if (PEAR::isError($mail)) {
   echo("<p>" . $mail->getMessage() . "</p>");
  } else {
   echo("<p>Message successfully sent!</p>");
  }
 ?>

Related topics:

  • Installing a web server on mac
  • Mountain lion installing (buying) a web server
  • Leopard install an SMTP server


来源:https://stackoverflow.com/questions/11174682/how-to-setup-an-smtp-server-on-mac-os-x

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!