概要
Linuxでphpでメールを送信する方法です。
内容
send_mail
以下のphpのソースをtest.phpとして、保存します。黄色の下線のところは必要に応じて変更します。
<?php
$to = "hoge@hoge.jp";
$subject = "HTML MAIL";
$message = "This is HTML MAIL";
$headers = "From: demo@demo.jp";
$headers .= "\r\n";
$headers .= "Content-type: text/html; charset=UTF-8";
mb_send_mail($to, $subject, $message, $headers);
?>
以下のコマンドを実行します。メールが送信されます。
php test.php
send_mailでは、Fromが存在しないアドレスでも送信できてしまいます。
SMTP経由で送信する方法
SMTPを使った送信では、sendmailのように好き勝手にメールを送れるのではなく、メールサーバーを利用して認証を必要としています。
SMTPはメールを送信するプロトコルで、実際に使われている外部のSMTPサーバを使用します。
送信したメールが迷惑メールに分類されたり、スパムとしてブロックされたりすることを回避することができます。
phpでSMTPでメールを送信する方法は
もう迷惑メールに入らない!SMTPを使ってPHPでメールを送信する方法 - YCOMのホームページの制作・運営に役立つブログ
ホームページを作ったら、必ずと言っていいほど設置するのがフォームですね。問い合わせや資料請求、イベントへの申し
php.intで設定
SMTPの設定はphp.iniから変更することができます。php.iniの[mail function]部分の「SMTP」にSMTPサーバ名、「smtp_port」にポート番号を記述します。
[mail function] ; http://php.net/smtp SMTP = smtp.xxxxx.com ; http://php.net/smtp-port smtp_port = 587
PHP | php.iniの設定 - メール使用のための環境設定
php.iniの設定