Отчеты PHPmailer: не удалось выполнить: / usr / sbin/sendmail

Почему? Я могу отправить по почте () в PHP, но я не могу отправить через PHPMailer с помощью IsSendmail ()

7 ответов


вы уверены, что путь /usr/sbin/sendmail правильно?

если да, проверьте также разрешения для sendmail установлены правильно.


У меня была такая же ошибка. Решил это, комментируя / удаляя это:

$mail->IsSendmail();

теперь он работает правильно. Я могу отправлять письма, и я получаю их в своем почтовом ящике.


У меня была такая же проблема. Потратил почти час на проверку журналов, проверку путей sendmail и тестирование php mail () и sendmail из командной строки безрезультатно. И, наконец, все, что я сделал, было перезапущено Apache с помощью apachectl -k graceful и Вселенная исцелилась.


для меня это работает с $mail->IsSMTP(). IsSendmail() ищет sendmail.


Я согласен с выше блока. Функция mail() по умолчанию включена на всех серверах (я считаю). В моем случае я смог отправить базовый html, используя функцию simple mail (), но когда я использовал PHPMailer для этого, у меня была эта ошибка.

Так Я удалил часть, где он проверяет т. е. IsSendMail () и все было хорошо. Теперь больше исключений.

для людей, которые хотят использовать SMTP. Сначала создайте учетную запись электронной почты на сервере sever, а затем определите ее параметр в ваш код.

спасибо,

- Талья


удаление IsSendmail () просто создало для меня еще одну ошибку, в конце концов, хост-провайдеру пришлось удалить safemode в настройках PHP. Тогда это сработало

Edit By David Burdess

SafeMode не должен быть установлен на живом сервере! Например, сайты, которые работают на Joomla или других решениях CMS, не должны быть включены, кроме как в среде тестирования


PHP с поддержкой safe_mode на общих серверах (и, вероятно, на других тоже) не удастся открыть /usr/sbin/sendmail (PHPMailer использует popen)