「お問い合わせ」や「パスワードリマインド」などで、メールの送信機能が必要になることがありますよね。
処理自体は、PHPのmb_send_mail関数を使えば簡単に作ることはできますが、実際にレンタルサーバー上で送るにはどうしたら良いのかわからないという人もいるのではないでしょうか。
そこで、今回はレンタルサーバー「エックスサーバー」上でPHPファイルを使ってメールを送る方法について紹介します。
PHPでメール送信するためにしなければならないこと
PHPでメール送信をするための手順としては次のようになります。
- メール送信処理が書かれたphpファイルの作成
- php.iniの変更
PHPでメール送信するための手順
1. メール送信処理が書かれたphpファイルの作成
今回はすでに作ったPHPのメール送信ファイルを使って、エックスサーバーでメールを送れるようにする設定なので、細かいphpの処理内容は割愛します。
気になる人は「mb_send_mail」でググってみてください。
ファイルが用意できたら、エックスサーバー 上にアップロードしましょう。
やり方は以下の記事を参考にしてください。
作ったWEBサービスやポートフォリオをエックスサーバーに公開する方法・手順
2. php.iniの変更
続いて、php.iniに書かれている、SMTPのポート番号を変更する必要があります。
まずはこちらの画面を開いてエックスサーバー の管理画面にログインします。
会員IDとパスワードはエックスサーバー契約時にメールで届いているので、そちらを確認しましょう。
どうしてもわからない場合は。「パスワードを忘れてしまった方はこちら」から問い合わせてください。
インフォパネルにログインしたら、その中の「ご契約一覧」にある「サーバー」の「サーバー管理」をクリックし「サーバーパネル」を開きます。
サーバーパネルを開いたら、画面下側にある「php.ini設定」をクリックします。
今回、メール送信の設定をしたいドメインを選択します。
「php.ini直接編集」をクリックします。
「smtp_port」という項目があるので、これを「25」から「465」に変更します(SSLを利用していない場合は「587」)。
変更したら、右下の「確認画面へ進む」をクリックします。
すると確認画面が表示されるので、「確定する」をクリックします。
以上で設定完了です。
設定が反映されるまでに最大で5分程度かかるので、少し待ってからメールを送ってみましょう。
メールが届けばOKです!
最後に
今回は、エックスサーバーからPHPのメール送信処理を使ってメールを送る方法について紹介しました。
WEBサービスやポートフォリオなどにメール送信機能がついている人で、メールが送れないと困っている人は参考にしてみてください。