Как отправить письмо с php из оболочки - PullRequest
0 голосов
/ 26 марта 2012

У меня есть следующий код в sendmail.php :

#!/usr/bin/php
<?php 
$to = "testmail@gmail.com";
$subject = "TestSubject";
$body = "TestBody";
if (mail($to, $subject, $body)){
    echo "Mail Sent";
}else {
    echo "Mail Failed";
}
?>

Если я захожу в веб-путь к файлу / sendmail.php, он отправляет почту OK.но если я сделаю в оболочке:

  chmod 755 sendmail.php
  ./sendmail.php

Там написано "Mail Sent", но ничего не отправлено.Почему это происходит?Спасибо

1 Ответ

2 голосов
/ 26 марта 2012

Как предложил Туонг Ле, я посмотрю на ваш файл php.ini. Также после просмотра

http://php.net/manual/en/function.mail.php

Вы можете проверить свой код один раз, чтобы убедиться, что у вас есть вся необходимая информация.

Если бы я оказался в вашей ситуации, я бы взял свой собственный код и вставил пример кода прямо из руководства по php, чтобы увидеть, где может возникнуть ваша проблема.

Попробуйте следующее, чтобы посмотреть, будет ли отправлено ваше письмо?

<?php
$to      = 'nobody@example.com';
$subject = 'the subject';
$message = 'hello';
$headers = 'From: webmaster@example.com' . "\r\n" .
'Reply-To: webmaster@example.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion();

mail($to, $subject, $message, $headers);
?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...