[PHP-users 16094]Re: mb_send_mailがtrueにもかかわらずメールを送信しない(mail.logにも何も残らない)

Tatsuya Matsuyama tatsuya @ kk-okamoto.jp
2003年 6月 21日 (土) 09:50:53 JST


松山です。
回答を多数いただきありがとうございます。

----- Original Message ----- 
From: "takay" <takay @ cup.com>
Sent: Friday, June 20, 2003 3:27 PM
Subject: [PHP-users 16082] Re: mb_send_mailがtrueにもかかわらずメールを送信しない(mail.logにも何も残らない)


> うちはRedHat9ですが、上記“デフォルト”設定のままでも
> 正常にmb_send_mailは動いてメール送信できています。
> 

私の(正常動作する)別の環境でも初期値のままでも問題ありませんでした。
ただ、他の方からもご指摘をいただいたので、

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

; For Win32 only.
;sendmail_from = me @ localhost.com

; For Unix only.  You may supply arguments as well (default: 'sendmail -t -i').
sendmail_path = /usr/lib/sendmail -t

のようにして、httpdを再起動しましたが、結果はNGでした。


----- Original Message ----- 
From: "Moriyoshi Koizumi" <moriyoshi @ at.wakwak.com>
To: "PHP-users ML" <php-users @ php.gr.jp>
Sent: Saturday, June 21, 2003 1:49 AM
Subject: [PHP-users 16093] Re: mb_send_mailがtrueにもかかわらずメールを送信しない(mail.logにも何も残らない)


> > error(28)が実行されないので
> > mb_send_mail関数自体にはtrueが返っていると思われます。
> 
> ひょっとして、実は mb_send_mail() は false を返しているのではないですか?
> だとしたら、
> 
> ./configure する際に configure が sendmail を発見できなかったため、
> コンパイル時に mb_send_mail() が有効にならなかった
> 
> という問題が考えられます。
> 
> ./configure によって生成される main/php_config.h の中に
> #define HAVE_SENDMAIL の一行があるか確認してみてください。

結論から申しあげますと、↑コレが原因でした。

実は、このホストを設定する際、RedHatをインストール後
不要なパッケージを削除する際sendmailを削除し、
そして、php->qmailとインストールしたのです。
# sendmailコマンド関連のリンクはqmailインストール後に作成していました。

再度、makeしなおしたところ、正常に動作するようになりました。
ありがとうございました。

ただ、ご指摘いただいた
「実は mb_send_mail() は false を返しているのではないですか?」
については、(特別な追試を行いませんでしたが)error(28)が実行されていないので
やはりtrueを返しているように思います。

このような状況下(make時にHAVE_SENMAILが未定義)では、
「senmail()関連の関数は未定義」のようなエラーが返る仕様でしたら
うれしいように思います。

ありがとうございました。








PHP-users メーリングリストの案内