Perlでのメール送信のコツ
使用するモジュールは、Net::SMTPSです。(いろいろモジュールを試して、一週間。このモジュールにたどり着きました)
使用するポート番号は、587で、doSSL=>'starttls'でTLSを設定します。
GmailとYahooメールで送信ができることを確認済みです。
Gmailでは、WebでGoogleアカウントの「セキュリティ」メニューから「安全性の低いアプリのアクセス」をオンに設定して下さい。
参照サイトでは、アプリのパスワードを使用して成功しているようですが、使用するパスワードは、アプリのパスワードではなく、Gmailアカウントのパスワードでした。
私は、送信時にUTF-8のキャラクタセットを使用しているので、datasendでContent-Typeにtext/plain; charset=UTF-8を設定し、受信側のエンコードを記述して下さい。
$msg->datasend("Mime-Version: 1.0\n");
$msg->datasend("Content-Type: text/plain; charset=UTF-8");
$msg->datasend("Content-Transfer-Encoding: 8bit\n");
参照サイト: