Ошибка:
Невозможно отправить электронное письмо.
исходит от drupal_mail () и считается очень общим и может относиться ко многим различным вещам, таким как неправильная настройка вашего сайта Drupal, конфигурация PHP или служба SMTP вашей операционной системы.
Первое, что нужно сделать, это проверить почтовую систему или журналы Apache (например /var/log/apache2/error.log) для получения более подробной информации об ошибке, поскольку вы можете просто пропуститьsendmail ее самостоятельно (если вы не хотите использовать какую-либо внешнюю службу SMTP).
Если ваш Drupal размещен на вашем выделенном сервере, и это совершенно новая конфигурация, скорее всего, вам не хватает SMTP-сервера (поскольку он указывает localhostпо умолчанию), если только вы не планируете использовать внешний.
Если это ваш локальный компьютер для разработки, либо игнорируйте ошибку (так как она должна нормально работать на выделенном сервере), попробуйте установить MailCatcher , либо вам придется установить SMTP-сервер, как указано выше.
Вот несколько других предложений:
- при использовании модуля SMTP проверьте, правильно ли вы его настроили (см. файл README ), включая правильные настройки сервера ,
- проверить значение
mail_systemпеременной, если оно переопределено - сбросить его до значения по умолчанию ( drush vdel mail_system),
- проверьте свою почтовую конфигурацию PHP (
php -i | grep -ie mail -e smtp) и убедитесь, что sendmail_path, SMTPхост и smtp_portправильно,
проверьте подключение к вашему SMTP-серверу, используя telnet, например,
telnet $(php -r 'echo ini_get("SMTP") . " " . ini_get("smtp_port");')
дважды проверить, не отключен ли хост, разрешен ли DNS или не заблокирован брандмауэром,
при использовании postfixпроверьте, httpd_can_sendmailустановлено ли значение1 ( setsebool httpd_can_sendmail 1).
Наконец, проверьте свою электронную почту с помощью следующей команды PHP:
php -r 'mail("drupal@mailinator.com", "Mail test", "It works!");'
и проверьте эту страницу, если электронное письмо было получено.