Почему PHP mail() не отправляет электронную почту?
Мне просто нужно действительно простое электронное письмо, которое будет отправлено, когда пользователь отправит форму на моем сайте. (Я изучал использование PHPMailer, но не смог заставить его на самом деле отправить электронное письмо. Я отчасти отказался от него, потому что он действительно сложнее, чем мне нужно.) В моей форме обработки файла.php у меня есть этот код в конце:
if (!mail($_POST['email'], "Registration - Your New Password", "Your password is: ".$pass))
echo "didn't send email";
else echo "email sent";
Я получаю сообщение "электронная почта отправлена", но я никогда не получаю никаких электронных писем, когда вводю свой личный адрес электронной почты. Кто-нибудь знает, почему этот код, кажется, интерпретируется правильно, но все же он не отправляет электронные письма?
Вот несколько шагов, которые я предпринял перед тестированием вышеупомянутой mail ():
1) я установил ssmtp
2) Я настроил /etc/ssmtp/ssmtp.conf так, чтобы он выглядел так:
root=postmaster
root=myemail@gmail.com
mailhub=smtp.gmail.com:587
UseSTARTTLS=YES
AuthUser=myemail
AuthPass=mypass
hostname=mywebsite.com
FromLineOverride=NO
3) В /etc/php5/apache2/php.ini
И в /etc/php5/cli/php.ini
Я установил линию, начиная sendmail_path
в sendmail_path = /usr/sbin/ssmtp -t
4) Я перезапустил apache2: "sudo service apache2 restart"
Примечание: я видел много других сообщений на эту тему в SO, но на самом деле не нашел решений по этим вопросам. Возможно, я пропустил решение в этих других сообщениях, так что, если это так, не могли бы вы дать мне ссылку на этот другой пост?