アプリ版:「スタンプのみでお礼する」機能のリリースについて

PHPでメールを送信すると、以下のエラーが出るのでが、こんな時何を手がかりに対処していいかわかりません。お手数ですが、アドバイスを頂けたらうれしいのですが。(素人なもんでよろしくお願いします。)

Warning: mb_send_mail() [function.mb-send-mail]: Failed to connect to mailserver at "localhost" port 587, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in xxxxxxxx.php on line nnn

A 回答 (4件)

ポートが開いてない感じですね。


まずそのエラーにも書いてありますが、
smtp_portの設定をphp.iniで確認してください。
あるいはini_set()関数を遣ってsmtp_portの設定をしろとかいてあるので、そのとおりでもいいと思います。

単純な話、メールサーバの設定はされていますか?ってことです。
    • good
    • 0
この回答へのお礼

お忙しい中早急な回答をいただきましてありがとうございます。

エラー発生時のphp.iniは、以下の内容です。
(最初default(smtp_port = 25)値で実行したら同じエラーが出たので変更しました。
・・・er at "localhost" port 25, verify yo・・・・)

[mail function]
; For Win32 only.
SMTP = localhost
smtp_port = 587

お礼日時:2009/02/05 19:20

Windowsならコマンドプロンプトで


C:\> netstat -a

UNIX系PCならコンソールで
# netstat -a

と実行すれば、下記のような表示がでます。そこに下記のようにsmtpのポートがLISTENING状態と出てきますか?

Active Connections
 Proto Local Address    Foreign Address  State
 TCP  pc-name:epmap     pc-name:0    LISTENING
 TCP  pc-name:microsoft-ds pc-name:0    LISTENING
 TCP  pc-name:smtp     pc-name:0    LISTENING

出てこないなら、SMTPサーバーの設定を再確認しましょう。
    • good
    • 0
この回答へのお礼

親切なアドバイスどうもありがとうございます。

smtpのポートがLISTENING状態と出てきますか?
 出てきませんでした。
 そこで、XP添付のsmtpをインストールしたら、
 同時にIISもインストールされてしまいましたが、
 smtpのポートがLISTENING状態と表示されました。
 (その後で、IISのポート番号を8080に変更しました)
 続いて、apacheを起動しようとしたのですが、起動できません。
 当然、最初にテストしたPHPも起動できなくなりました。
 IISをアンインストールして、現在は最初の状態にもどりました。
 mb-send-maillって、outlook express(現在使用しているメールソフト)を使うように簡単には利用できないんですね。
 apache と php 環境で、mb-send-maillを利用するときには、自分の
 PC内にどんなSMTPサーバを入れれば良いんでしょう・・・

 

お礼日時:2009/02/06 10:23

WINだとこーゆサーバも入れて動いたことがあります。



参考URL:http://homepage2.nifty.com/spw/software/radish/
    • good
    • 0
この回答へのお礼

どうもありがとうございました。
アドバイス頂きましたソフトをインストールしたら
思った通りに、動作しました。
-------------------------------------------
親切な皆様に感謝いたします。

お礼日時:2009/02/07 09:31

回答番号:No.2 つづき



>> mb-send-maillって、outlook express を使うように簡単には利用できないんですね。

もしも、localhostのPCにグローバルIPが無いのならSMTP(メール)サーバを入れてもメールは送信できません。
さらに、どこかのDNSにMXレコードを登録してもらわないとそのメールサーバは受信できません(送信は可)
環境に問題は無いなら、「フリー メールサーバ Windows」でググればいくつかソフトが見つかります。

御自分のPC環境に問題があるのあるのなら、outlook express で使っているSMTPサーバを利用する手も有ります。
php.iniの下記部分を、outlook expressの設定と合わせるだけです
[mail function]
; For Win32 only.
SMTP = localhost
smtp_port = 25
注)プロバイダーによっては、SPAM対策で動かない場合も有ります
    • good
    • 1
この回答へのお礼

懇切丁寧なアドバイスを頂きまして感謝いたします。
よくわかりました。ありがとうございました。
localhostのPCで内容を確認できたので、レンタルサーバにPGMを
アップロードして使用する予定です。

お礼日時:2009/02/07 09:42

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