回答:
使ってみてください:
Gmailを使用してSTMPを設定する場合は、次の手順に従います。
エラー:
電子メールを送信できません。
はdrupal_mail()からのものであり、非常に一般的であると考えられており、Drupalサイトの設定ミス、PHP設定、オペレーティングシステムのSMTPサービスなど、さまざまなことに関連している可能性があります。
最初に行うべきことは、/var/log/apache2/error.logエラーの詳細についてメールシステムまたはApacheのログ(例:)を確認することです。外部のSMTPサービスを使用したくない場合を除いて、エラー自体が欠落しsendmailている可能性があります。
Drupalが専用サーバーでホストされており、それがまったく新しい構成であるlocalhost場合、外部サーバーを使用する予定がない限り、SMTPサーバーが見つからない可能性があります(デフォルトでポイントしているため)。
ローカル開発マシンの場合は、エラーを無視するか(専用サーバーで正常に動作するため)、MailCatcherをインストールするか、上記のようにSMTPサーバーをインストールする必要があります。
他にいくつかの提案があります:
mail_system変数の値をチェックし、オーバーライドされている場合-デフォルト値にリセットします(drush vdel mail_system)、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!");'
承認された回答でこの問題は解決しましたが、この投稿の時点では、DrupalサイトがHTTPSで実行されていないため、Gmailは安全性の低いアプリケーションをすべてブロックしています。
同じ共有ホスティング上でウェブマスター用のメールを作成しないと、メールを送信できません。例のために。ドメインtest.comがある場合は、Cpanelにメールwebmaster@test.comまたはadmin@test.comを作成し、このメールをウェブサイトのメインのメールとして設定する必要があります。このメールは、メールの[差出人]欄に表示されます。または、ドメイン用に独自のメールを作成し、このメールをサイトのプライマリとして設定します。共有ホスティングのセキュリティ設定に依存します。