gaggitのブログ

コーディング、ガジェット、TIPS関連、FX

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");

 

参照サイト:

 

end0tknr.hateblo.jp