dポイントプレゼントキャンペーン実施中!

ここでお願いします。

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(自分用のメールアドレス, 'テスト', '本文');

A 回答 (2件)

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



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

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

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

お礼日時:2008/02/28 21:33

ローカルの環境にメールサーバは立ち上げていますか?


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

この回答への補足

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

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

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

補足日時:2008/02/27 22:37
    • good
    • 0
この回答へのお礼

ご返答ありがとうございます。
@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

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!