Pear Mail HTML
メ-ル送信
Pear Mail HTMLメ-ル送信レンタルサ-バ用ファイル作成
レンタルサ-バ から HTML メ-ルを送信するファイルを作成します。
ファイル内容は、63Pear Village のトップの左サイドナビ
「Pear Mail HTML メ-ル送信」 の中の
Pear Mail HTMLメ-ル送信レンタルサ-バ用 PHP ファイル
を見てください。
初期設定
header('Content-type: text/html; charset=utf-8');
mb_language('ja');
mb_internal_encoding("UTF-8");
及び Pear::Mail 読込み
require_once 'Mail.php';
require_once 'Mail/mime.php';
までは、
Pear Mail HTMLメ-ル送信 XAMPP ファイル作成-1
と同じです。
XAMPP 使用の時は、Pear Mail の smtp の機能を利用して xampp から Gmail 経由で発信したのですが、
レンタルサ-バから発信するときは、Pear Mail の sendmail の機能を利用してレンタルメ-ルサ-バ
から発信します。
ちなみに、レンタルサ-バから Pear Mail の smtp の機能を利用して発信しようとすると
「あなたのパスワードを使ってあなたの Google アカウント(******@gmail.com)に
ログインしようとした人がいます。
このユーザーはメール クライアントなどのアプリや携帯端末を使用していました」
と言うお知らせメ-ルが、******@gmail.com に届きます。
もちろん送り込んだメ-ルは発信されません。
Gmail のセキュリティはすばらしいです。
メ-ル送信基本パラメ-タ定義
Gmail は使用しないので、Gmail 関連のメ-ル送信基本パラメ-タ定義は必要ありせん。
まずは sendmail の機能を利用するためには
レンタルサ-バの sendmail ファイルがある場所 sendmail_path を指定する必要があります。
$params['sendmail_path'] = '/usr/sbin/sendmail';
$params['sendmail_args'] = ''; //この行は必須のようです。
になります。
通常 sendmail_path は、
/usr/sbin/sendmail ←ミニバ-ドはこれ
/usr/bin/sendmail
/usr/lib/sendmail
のいずれかです。
ミニバ-ドの場合
http://www.minibird.jp/man/homepage_base.php
の中の
プログラムのコマンドパス
の下の方のところに説明があります。
他のレンタルサ-バにも同じような説明があるはずですので参照してください。
なお、sendmail_args を利用すると、sendmail へ渡すパラメータを指定することができます。
-t
宛先メールアドレスを、メール本文中のメールヘッダ(To/Cc/Bcc)から取得します。
-f address
-f の直後に指定された文字列を、fromアドレスとして使用します。
等がありますが、ここでは特に指定しません。
ただし、この
$params['sendmail_args'] = '';
の行は必須です。
送付先 $recip
メ-ル送信先 $recip を定義します。
自分宛にメ-ル送信しないとデバッグできませんので、
$recip = *******@gmail.com
とします。
他にもメ-ルアドレスをお持ちならそれを設定することも可能です。
実際にレンタルサ-バに置くときにはこの行は必ず自分のメ-ルアドレスに書換えてください。
後半部分の作成
このあとのファイル作成は、
「Pear Mail HTML メ-ル送信」 の中の
Pear Mail HTMLメ-ル送信 XAMPP ファイル作成-1
Pear Mail HTMLメ-ル送信 XAMPP ファイル作成-2
とほぼ同じです。
差分のみ説明していきます。
[差分]ヘッダー $headers = array( ) 定義 From
送付元を設定します。
和文で設定します。全角文字が1文字以上必要です。
ただ、Pear Mail の smtp の機能を利用して xampp から Gmail 経由で発信する時は
'From' => mb_encode_mimeheader('63Pearより'),
としても、Gmail の場合は受取ったメ-ルの送信元は、
63Pearより <*******@gmail.com>
のように Gmail アドレスが必ず表示されるため送信元を詐称することはできませんでした。
しかしながら sendmail 機能を使用して
'From' => mb_encode_mimeheader('63Pearより').'<info-1@63pear.devel.jp>',
のように記述してレンタルメ-ルサ-バから発信すると、
受取ったメ-ルの送信元は、
63Pearより <info-1@63pear.devel.jp>
のように表示されます。
すなわち送信元が詐称されます。
しかし、わかる人が見ればメ-ルヘッダに、今回の場合でいえば、
@sv22.minibird.netowl.jp
が隠されており、送信元はわかってしまうので悪さはしないでくださいね。
[差分]factory メソッド $m セット
factoryメソッドを使ってMailのインスタンスここでは $m を作成します。
factoryメソッドの第1引数
レンタルサ-バを使用しますので、sendmail プログラムにより送信します。
factoryメソッドの第2引数
第2引数には、バックエンドごとのパラメ-タを指定します。
sendmail 用パラメ-タは、メ-ル送信のための基本パラメ-タ $params が設定されます。
すなわち
$params['sendmail_path'] = '/usr/sbin/sendmail';
$params['sendmail_args'] = '';
の二つが設定パラメ-タです。
メ-ルアドレス書換
実際にレンタルサ-バに置くときには、
$recip = '*********@yahoo.co.jp';
の行は必ず自分のメ-ルアドレスに書換えてください。
自分のメーラで、*********@yahoo.co.jp 宛に送信したメールが来ていることを確認することができます。
Pear Mail HTMLメ-ル送信動作確認概要 に続く
Pear Mail HTMLメ-ル送信 XAMPP ファイル作成-1 に戻る
Pear Mail HTMLメ-ル送信 XAMPP ファイル作成-2 に戻る
Pear Mail HTML メ-ル送信概要 に戻る
Pear Mail HTML メ-ル送信レンタルサ-バ準備 に戻る