Windowsを使用しています。XamppのMercuryを使い、PHPのmb_send_mail関数を使ってのMailの送信を試みているのですが、上手くいきません。ネットに掲示されている情報を元に、php.iniとMercuryの設定を行なっていますが、うまくいきません(複数のネットで同じ様な方法が提示されている)。
ご指導くださると助かるのですが。
PHPのmb_send_mail関数自体は正常に作動していると思われます。Browserには、正常に機能した際に表示されるメッセージ”メールを送信しました。”が表示されます。 送信後の状況は、Browserに上記の表示が示される以外、何もありません。(エラーメッセージ等も、ありません。)自身の持つ他のメールアドレスへ送信するのですが、こちらに受信されません。
下記に作動時の環境、自分が行ったphp.iniの設定、mercuryの設定を順に記していきます。
- mb_send_mailの作動時の環境
Windows: 8.1
PHP: ver 7.2.0
Xampp(control panel): v3.2.2
Mercury Mail Transport System: 4.6.2
Apache: 2.4.29
ノートンセキュリティーを使用していますが、操作中は一時的にOffとしています。
- php.iniの設定:
[mail function]
; For Win32 only.
; http://php.net/smtp
SMTP=localhost
; http://php.net/smtp-port
smtp_port=25;
; For Win32 only.
; http://php.net/sendmail-from
sendmail_from = xxxxxxx@yyyy.ocn.ne.jp
;ForWin32only.
;SMTP=localhost
;smtp_port=25;
;ForWin32only.
;sendmail_from= xxxxxxx@yyyy.ocn.ne.jp
[ODBC]
php.iniの設定は、[mail function]の部分で行いますが、上記のように同じような内容が上下に2か所あります。同じ様にSMTP, smtp_port, sendmai_fromlを記述するようになっていますが、上の方はhttp://php.net/smtp, smtp-port, sendmail-from等、が含まれています。
使い分けが分からないため、両者ともに、別々に同じ内容で試してみました。
SMTPは、SMTP=localhost, とし、
smtpは、smtp=25, 587の二つを試しています。
Sendmail_from は、Sendmail_from=私のOCNメールのメールアドレスを記入しています。
上記のコードで示されるのは、http://php.net/smtp, http://php.net/smtp-port, http://php.net/sendmail-from等、が含まれているケースで、SMTP=localhost、smtp_port=25;としたケースを示しています。他のケースでは、それぞれのケース、或いは値が生きるように、それぞれのコメントアウトが生かされ、或いは外されています。
3.Mercuryの設定
a. Xamppのcontrol panelのmercuryより「Admin」をクリックし、管理画面を表示、メニューバーよりConfiguration->Protocol Modulesを選択。「MercuryS SMTP Server」と「MercuryC SMTP Relaying client」にチェックを入れ、残りの項目はすべてチェックを外しています。
b. メール中継用の設定
「MercuryS SMTP Server」を選択し、「Connection control」を選択。「Do not permit SMTP relaying of non-local mail」と「Authenticated SMTP connections may relay mail」のチェックが外れていることを確認。他はデフォルトのまま。
メニューから「MercuryC SMTP client」を選択。
下記を設定
SMTP”Smart”Host detailsを下記のように設定しています。
• Smart host name: smtp.vcbird.ocn.ne.jp
• Connect to TCP/IP port:465
• Credentials for SMTP Authentication, if required
• Username: OCN会員登録書に記載される認証ID[接続ID]を記入。
• Password: OCN会員登録書に記載される認証パスワード[接続パスワード]を記入。
Note: smtp.vcbird.ocn.ne.jpはOCNのsmtpサーバー、465はOCNの送信サーバーのポート番号です。
何れもocnのガイドラインhttps://support.ntt.com/ocn/support/pid2990021006より、入手したものです。
以上です。
メール送信ができないのは、多分、自身の解釈に間違いがあり、間違った数値、或いは、パラメーターを入力しているのかもしれません。ご指摘いただけると嬉しいです。
自分はPHP初心者です。上記のメール、或いは通信に関する知識は、少なく、ガイドライン、或いはマニュアルに沿って、作業する程度のことしかできません。