icon
icon

XAMPPのローカル環境からメールを送信できるように設定する方法【初心者向け】

XAMPPのローカル環境から【メールを送信】できるように設定する方法を初心者向けに解説した記事です。基礎となる、メール送受信の仕組みから解説しているので、初心者でも簡単に理解することができます。

テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日  調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名  調査手法:インターネット調査

PHPの開発環境として使われることが多いXAMPPは、ローカル環境からメールを送信することが可能です。

今回は初心者向けに、メール送信の設定方法を紹介します。

 

おさらい:メール送受信の仕組み

設定方法の前に、そもそもメールが送受信できる仕組みについて知っておきましょう。

通常、下記のような順序でメールは送受信がおこなわれます。

(※Gmailを使って、Yahoo!のメールアドレスにメールを送る場合を例にしています)

 

  1. ブラウザでGmailの画面を表示
  2. メール作成
  3. メール送信
  4. GmailのSMTPサーバがメールを受信
  5. GmailのSMTPサーバがyahooのSMTPサーバにメールを送信
  6. YahooのSMTPサーバがメールを受信
  7. YahooのSMTPサーバが該当のyahooメールアドレス宛にメールを送信
  8. 該当のYahooメールアドレスの持ち主がメールを受信

今回の設定では1〜4を扱うことになります。

この流れを意識しながら取り組んでみてください。

 

大石ゆかり

田島メンター!XAMPPでメールを送信する関数を書いてみたんですが、送信に失敗してしまうみたいなんですが。

田島悠介

レンタルサーバーだと送信できるんだけど、ローカルからだと少し設定が必要なんだ。方法を見てみよう!

大石ゆかり

はい!

 

事前準備

今回の作業では設定ファイルを直接編集することになります。万が一に備えて、作業前にバックアップは必ず取っておくようにしましょう。

また、メールアドレスを設定する必要があるので、利用できるメールアドレスをひとつ用意しておいてください。

(※今回はGmailを例として使います)

 

 

[PR] PHPプログラミングで挫折しない学習方法を動画で公開中

XAMPPでのメール送信設定

まずは、「C:xamppphp」直下にある、「php.ini」をテキストエディタを使って開きます。

※xamppフォルダの場所はインストール時に変更することができますが、今回はデフォルトのインストール先を使用しています。

 

テキストエディタで開いたら、「mail function」で検索をかけます。

検索に引っかかった行から28行分(緑の枠で囲まれた箇所)がXAMPPのメールに関する設定の箇所です。

WS0000031

ここで赤枠で囲まれた「;」を削除して、「php.ini」ファイルを上書き保存してファイルを閉じてください。

(※上書き保存前に必ずバックアップをとってください)

 

続いて、「C:xamppsendmail」直下にある、「sendmail.ini」を同じようにテキストエディタで開いてください。

開いたら「smtp_server」で検索をしてください。検索後、「smtp_server=mail.mydomain.com」の行が表示されるので、「smtp_server=smtp.gmail.com」に書き換えてください。

smtp_domain

 

そのまま、「smtp_port=25」で検索をしてください。検索後、「smtp_port=25」の行が表示されるので、「smtp_port=587」に書き換えます。

(※「smtp_port=587」に編集する理由は今回は割愛します)

smtpport

 

さらに、「auth_username」で検索をしてください。検索後、「auth_username」が検索に引っかかり、その下に「auth_password」の行があります。

auth

ここで「auth_username=」を「auth_username=test@gmail.com」に編集してください。

(※今回は例として「test@gmail.com」にしていますが、実際は利用するメールアドレスを記載してください)

 

今度は「test@gmail.com」を使用する際に必要なパスワードを、「auth_password=password」のように入力してください。

auth_after

 

最後に、「force_sender=」で検索をしてください。検索後「force_sender=」の行が表示されますので、先ほどのように「force_sender=test@gmail.com」と入力してください。

forcesender

以上で「sendmail.ini」の編集は完了ですので、上書き保存してファイルを閉じてください。

 

大石ゆかり

設定ファイルを変える、ポート番号を25から587にする。gmailのユーザー名とパスワードを設定する。これで良いですか?

田島悠介

OK!メールを送るにはSMTPサーバーが必要なんだよね。SMTPプログラムは25番ポートを使用するってだいたい決まってるんだよね。今回はgmailのSMTPサーバーを使うよ。

大石ゆかり

587番ポートに変更したのには理由があるんですか?

田島悠介

主に迷惑メール対策なんだ。誰でもSMTPサーバーからメールを送れたら困るので、587番ポートでユーザー認証もするようになったんだ。

 

メールの送信テスト

設定が完了したら、実際にメールが送れるかテストしてみましょう。

まずはじめに、「C:xamppphp」直下に、「test_mail.php」というファイルを作成してください。

作成後、下記の内容をコピーして保存しておきましょう。

<?php
if (mb_send_mail(‘送信先メールアドレスを入れる’, ‘TEST SUBJECT’, ‘TEST BODY’)) {
echo ‘送信完了’;
} else {
echo ‘送信失敗’;
}

 

作成した「test_mail.php」をダブルクリックするとメールが送信されるので、「sendmail.ini」に登録したメールアドレスに、メールが届いているか確認してください。

無事にメールが届いていれば設定完了です。

万が一メールが届いていない場合は、「C:xamppsendmail」直下に作成される「error.log」ファイルを確認し、問題箇所を特定してください。

(※error.logファイルはエラーが発生したタイミングで自動的に作成されるため、テストする前には存在しません)

 

コラム

コスパとタイパ、両方結果的に良くなる良くなる学び方とは?

「スクールは高いし時間も縛られて効率が悪い」と考える方は多いと思います。
もちろん、時間も費用もかかることは間違いありません。
ただ 結果的に無駄な学びにお金も時間もかける方がリスクが高いという考えもあります。

コスパ・タイパ最適化の参考として、 テックアカデミー卒業生がスクールを選んだ理由 をご紹介します。

  • ・困ったときに、質問や相談できる相手がいるため挫折しなかった
  • ・プロとして必要なスキルのみを深く学べたので無駄がなかった
  • ・副業案件の提供と納品までのサポートがあったので目的を達成できた

安価・短期間で広く浅く学んでも意味がありません。 本当に自分の目的が達成できるか、それが重要です。
自分にどのスキルや学び方が合っているか、どんな学習方法かなど、お気軽に 無料相談 に参加してみませんか?

カウンセラー・現役のプロへ、何でも気軽に無料相談可能。 30分か60分お好きな時間が選べて、かつ3回まで すべて無料で ご利用できます。
無理な勧誘は一切ない ので、お気軽にご参加ください。

今なら相談した方限定の割引・参加特典付き! 無料相談はこちら

おわりに

今回の記事は以上です。

XAMPPをさらに使いこなしたい場合は、XAMPPでセキュリティ設定を行う方法も合わせてご覧ください。

 

大石ゆかり

ローカルからメールが送信できました!

田島悠介

お問い合わせフォームなどを設置して、メールで送るのもいいね。

大石ゆかり

これからは、通常の案件はデータベースに登録して緊急の案件は、メールでも送るといった使い方が出来そうです。

田島悠介

後、言い忘れたんだけど、gmailのアカウントがあるからといって、不特定多数の人に大量にメールを送らないようにしたいね。メールは奥が深いので、興味がある人は、ブートキャンプで質問してね!

 

PHPを勉強していて、
・もっと効率的に勉強したい
・誰かに聞きながら学びたい
・自分でWebサービスを作りたい
と思ったことはないでしょうか?

そんな方のために、TechAcademyではオンラインブートキャンプPHP/Laravelコースを提供しています。

現役エンジニアがパーソナルメンターとして受講生に1人ずつつき、マンツーマンのメンタリングで学習をサポートし、オリジナルWebサービスを開発することが可能です。

独学に限界を感じている場合はご検討ください。

初心者・未経験でもできる。まずはテックアカデミーに相談しよう

プログラミングを独学で学習していて、このように感じた経験はないでしょうか?

  • ・調べてもほしい情報が見つからない
  • ・独学のスキルが実際の業務で通用するのか不安
  • ・目標への学習プランがわからず、迷子になりそう

テックアカデミーでは、このような 学習に不安を抱えている方へ、マンツーマンで相談できる機会を無料で提供 しています。
30分間、オンラインでどんなことでも質問し放題です。

「受けてよかった」と感じていただけるよう カウンセラーやエンジニア・デザイナー があなたの相談に真摯に向き合います。

「自分に合っているか診断してほしい」
「漠然としているが話を聞いてみたい」

こんなささいな悩みでも大丈夫です。

無理な勧誘は一切ありません ので、まずはお気軽にご参加ください。
※体験用のカリキュラムも無料で配布いたします。(1週間限定)

今なら参加者限定の割引特典付き! 無料相談を予約する