こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

ローカル環境でのメール送信ができない

ここでお願いします。

xampp-1.6.4
windows2000
PHP5.2.4

xamppでローカル環境にサーバを置き、PHPスクリプトに記述した
mb_send_mail関数で自分宛てにメールの送信テストを行いました。
エラーは出なく成功したと思ったのですが、ルータのリンクが点滅してなく
どうやら外部に送信されてないようなのです・・・
何が原因なのでしょうか?

[php.ini]
[mail function]
SMTP = localhost
smtp_port = 25

; For Win32 only.
sendmail_from = 自分用のメールアドレス

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

送信先も自分用のメールアドレスで
[test.php]
mb_language("Ja");
mb_internal_encoding("sjis");
@mb_send_mail(自分用のメールアドレス, 'テスト', '本文');

投稿日時 - 2008-02-27 20:43:58

QNo.3815554

すぐに回答ほしいです

質問者が選んだベストアンサー

「ご自分のメールサーバ」というのは、SMTP認証とかPOP before SMTPが不要なサーバでしょうか?そうでなければmb_send_mailで直接は送れないと思います。

#587を使ってYahooのメールサーバに繋ぐとしてもPOP before SMTPで引っかかるかと・・

一番確実なのは、自分のPCにメールサーバをセットアップして「ローカル配送」で確認することだと思います(外へ投げられるようにするにはOP25Bなどもあって設定が面倒なので・・)。Win環境ならXMailでよろしいかと思います。

投稿日時 - 2008-02-28 10:24:50

お礼

ご返答ありがとうございます。
これからXMailを入れてみたいと思います。

投稿日時 - 2008-02-28 21:33:04

ANo.2

このQ&Aは役に立ちましたか?

4人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.1

ローカルの環境にメールサーバは立ち上げていますか?
立ち上げていない場合は、外部のメールサーバを使うように設定してください。
なお、最近はSPAM対応のためポート25は拒否している所もありますので、事前に確認したほうがいいです。

投稿日時 - 2008-02-27 20:49:08

補足

追記
次のようにやればできる可能性があるというサイトを見つけて
修正したのですが、

SMTP = smtp.mail.yahoo.co.jp
smtp_port = 587

に変更しましたが、同じエラーでした・・・

投稿日時 - 2008-02-27 22:37:26

お礼

ご返答ありがとうございます。
@mb_send_mail関数の@を外して
SMTPをサーバを自分のメールアドレスで使用しているやつを使ったのですが、

SMTP server response: 550 5.7.1 Unable to relay for ・・・
というエラーが出たのですが、これはport25の拒否とは関係あるのでしょか?

; For Win32 only.
SMTP = 自分の送信メールサーバ(SMTP) ←
smtp_port = 25

投稿日時 - 2008-02-27 22:26:25

あなたにオススメの質問