Ticket #234 (reopened バグ指摘) — at Version 7
MAIL_BACKENDがSMTP時に、管理者へ購入完了メールが配信されない
| Reported by: | adachi | Owned by: | somebody |
|---|---|---|---|
| Priority: | 中 | Milestone: | EC-CUBE2.4.4 |
| Component: | フロント | Version: | 2.0.1(正式版) |
| Keywords: | Cc: | ||
| 修正済み: |
Description (last modified by nanasess) (diff)
MAIL_BACKENDがSMTP時に管理者へ購入完了メールが配信されない
http://xoops.ec-cube.net/modules/newbb/viewtopic.php?forum=10&post_id=5785&topic_id=1619#
Change History
comment:3 Changed 16 years ago by nanasess
- Status changed from closed to reopened
- Resolution 修正済 deleted
- Milestone changed from EC-CUBE to EC-CUBE2.4.3
まだ送信できない環境があるようですので, 差し戻します
comment:4 Changed 16 years ago by nanasess
- Milestone changed from EC-CUBE2.4.3 to EC-CUBE2.4.4
引き続きの対応として, milestone:EC-CUBE2.4.4 へ変更します
comment:5 Changed 16 years ago by nanasess
MAIL_BACKEND=smtp の時は, PEAR::Mail_smtp を使用しますが, このクラスのロジックを見ると, To も Bcc も同一セッションにて RCPT TO: に書き込んでいるようです.
MTA の設定によっては, 同一セッションに設定可能な RCPT TO: が制限されていると思われます.
したがって, 送信できない環境では, この制限に該当しているのではないかと思われます.
comment:6 Changed 16 years ago by nanasess
MAIL_BACKEND=smtp かつ, Bcc 設定時には, Bcc は別セッションで送信するようにした方が良さげですね.
comment:7 Changed 16 years ago by nanasess
- Description modified (diff)
現在の実装は以下のようになっています.
MAIL_BACKEND=smtp
SC_Sendmail::getRecip() は, To, Cc, Bcc の配列を返す. Bcc の送信を行う場合は, SMTP の RCPT TO: に設定され, To と同一のセッションで送信される.
MAIL_BACKEND=mail
SC_Sendmail::getRecip() は, To のみを返す. Bcc は, ヘッダに設定され, mail() 関数の addtional_headers で設定され, 送信される.

メールバックエンドに関わらず、Cc,Bcc宛にメールが配信されません。