例:
受け取るメールアドレス:aaa@test.jp
メール送信を実行するプログラム:test.php
以下のページを参考に
http://faq.sakura.ne.jp/wiki/wiki.cgi?%A5%E1%A1%BC%A5%EB#i29
/home/(ユーザ名)/MailBox/aaa/にある.mailfilterに
to "| /home/(ユーザ名)/www/test.php"
と記述しました。
そして、aaa@test.jpに空メールを送信したのですが、反応がありません。
メール送信用のtest.phpに直接アクセスすると、返信メールが届くので、メール送信用プログラムに問題はないかと思います。
もし、ご存じの方は教えていただければと思います。
http://q.hatena.ne.jp/1167279986
過去にも同じ質問があるようです。上記URLの例では、.mailfilterのパーミッションを600にすることで解決したようですがいかがでしょうか
>aaa@test.jpに空メールを送信したのですが、反応がありません。
全く何もないですか?
例えば、目的のスクリプトに転送されていない(転送先が見つからない)
とかスクリプトのパーミッションがまずい(700必要)とかあると
デーモンから空メを送ったアドレスに返信がきたような記憶があります。
デーモンからの返信がなければ、もしかしたらメール送信までは出来ているのかも?
返信プログラムにログを記録するようにしてチェックするのはどうでしょうか?
あとtest.phpの1行目には「#!/usr/local/bin/php」、改行コードはLFあたりをチェックしてみて下さい。
test.phpは
#!/usr/bin/php -q
$from="送信するメールアドレス";
$body="aaa";
//メール返信
mb_internal_encoding("utf-8");
mb_language("japanese");
mb_send_mail($from, "empty_mail", $body, "From: aaa@test.jp");
?>
と書いています。実行すると指定していたメールアドレスにメールが送信されるイメージです。
また、一行目を#!/usr/local/bin/phpにすると
Error in argument 1, char 3: option not found
というメッセージが表示されたので、上記のようにしています。
コメントが書けないのでこちらから失礼します。
>/home/(ユーザ名)/www/test.php: not found
>554 5.3.0 unknown mailer error 127
というのは転送先が見つからないということでしょう。
test.phpのアップロード先がwww直下になっているか確認して下さい。
もしくは.mailfilterに記述したpathがスペルミスとか、変なスペースが入っているとか...
>また、一行目を#!/usr/local/bin/phpにすると...
私のところではoptionなしで実行できているんですが...
でも#!/usr/bin/php -qでも問題はないはずですね。
telnetでサーバーにアクセスしてコマンドラインから
/home/(ユーザ名)/www/test.php
とやってみてはどうでしょうか?万が一pathの誤りがあれば
エラーでしょうし、合っていれば実行されると思います。
(合っているときは...何が原因でしょう?)
返信が遅れてすみません。telnetでサーバにアクセスしてコマンドラインから実行すると、指定したメールアドレスにメールが送信されました。つまり、合っていると思われます。
スクリプトが見つからないというエラーがでているようですね。
echo $_SERVER['SCRIPT_FILENAME'];でスクリプトの絶対パスを表示し、.mailfilterのパス(/home/(ユーザ名)/www/test.php)が合っているか確認してみてはいかがでしょうか。
これに関しては問題ありませんでした。
回答ありがとうございます。
ただ、パーミッションを設定し、送信はされるのですが、エラーメールとして戻ってきます。
エラーメール内には以下のようなメッセージがあります。しかし、どうやっても解決出来ません‥。
/home/(ユーザ名)/www/test.php: not found
554 5.3.0 unknown mailer error 127