1

ユーザーが自分の Web サイトでフォームを送信したときに、本当に単純なメールを送信する必要があるだけです。(私は 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_path4 sendmail_path = /usr/sbin/ssmtp -t
) apache2 を再起動しました: "sudo service apache2 restart"

注: SO に関するこのトピックに関する他の多くの投稿を見てきましたが、これらの質問の解決策は実際には見つかりませんでした。おそらく、これらの他の投稿で解決策を見逃していたので、その場合は、その他の投稿へのリンクを教えていただけますか?

4

0 に答える 0