PHP

PHPで外部送信サーバを使う(XAMPP)

 

ローカルのXAMPPで検証する。

 

SMTP25番ポートが禁止されている環境や、確実に相手に届けたい場合は、別に送信メールサーバを用意して587番ポートでアカウント認証経由で送信した方が良い。

 

php.iniの編集 (C:\xampp\php\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 = me@example.com

; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
; http://php.net/sendmail-path
;sendmail_path =

; Force the addition of the specified parameters to be passed as extra parameters
; to the sendmail binary. These parameters will always replace the value of
; the 5th parameter to mail().
;mail.force_extra_parameters =

↓変更

[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 = me@example.com

; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
; http://php.net/sendmail-path
;sendmail_path =
sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t"

 

sendmail.iniの編集(C:\xampp\sendmail\sendmail\ini)

 

 

[sendmail]

smtp_server=mail.mydomain.com

↓変更

;smtp_server=mail.mydomain.com
smtp_server=smtp.gmail.com


smtp_port=25

↓変更

;smtp_port=25
smtp_port=587


auth_username=
auth_password=

↓変更

;auth_username=
;auth_password=
auth_username=hogehoge@gmail.com
auth_password=gmailパスワード


force_sender=

↓変更

;force_sender=
force_sender=tacosmailphp55@gmail.com

 

○mailtest.php

<?php
if (mb_send_mail('hogehoge@example.net', 'test_send', 'test_contents')) {
echo 'Send success';
} else {
echo 'Send false';
}
?>

送信失敗

 

Apacheのログを見る。

Please log in via your web browssendmail: Error during delivery: <https://accounts.google.com/signin/continue?sarp=1&scc=1&plt=AKgnhoge

 

解決方法

上記のようにエラーが出た場合は、Googleアカウント側でアプリケーションがPHPを使うことを許可する必要がある場合があります。

  1. https://accounts.google.com/DisplayUnlockCaptcha
    でアカウントへのアクセスを許可する
  2. https://www.google.com/settings/security/lesssecureapps
    で安全性の低いアプリのアクセスを「オン」にする

 

hogehoge@example.netにて受信を確認することが出来た。

 
@see http://yossy-style.net/xampp-mb_send_mail
@see http://php7.web.fc2.com/mail.html

Amazonおすすめ

iPad 9世代 2021年最新作

iPad 9世代出たから買い替え。安いぞ!🐱 初めてならiPad。Kindleを外で見るならiPad mini。ほとんどの人には通常のiPadをおすすめします><

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)