人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

さくらインターネットのサーバで空メール送信する方法を教えて下さい。

例:
受け取るメールアドレス: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に直接アクセスすると、返信メールが届くので、メール送信用プログラムに問題はないかと思います。

もし、ご存じの方は教えていただければと思います。


●質問者: kt26
●カテゴリ:ウェブ制作
✍キーワード:.jp AAA HOME PHP test
○ 状態 :終了
└ 回答数 : 4/4件

▽最新の回答へ

1 ● sera_yr
●23ポイント

http://q.hatena.ne.jp/1167279986

過去にも同じ質問があるようです。上記URLの例では、.mailfilterのパーミッションを600にすることで解決したようですがいかがでしょうか

◎質問者からの返答

回答ありがとうございます。

ただ、パーミッションを設定し、送信はされるのですが、エラーメールとして戻ってきます。

エラーメール内には以下のようなメッセージがあります。しかし、どうやっても解決出来ません‥。


/home/(ユーザ名)/www/test.php: not found

554 5.3.0 unknown mailer error 127


2 ● gekikawa
●23ポイント

>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

というメッセージが表示されたので、上記のようにしています。


3 ● gekikawa
●22ポイント

コメントが書けないのでこちらから失礼します。

>/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でサーバにアクセスしてコマンドラインから実行すると、指定したメールアドレスにメールが送信されました。つまり、合っていると思われます。


4 ● sera_yr
●22ポイント

スクリプトが見つからないというエラーがでているようですね。

echo $_SERVER['SCRIPT_FILENAME'];でスクリプトの絶対パスを表示し、.mailfilterのパス(/home/(ユーザ名)/www/test.php)が合っているか確認してみてはいかがでしょうか。

◎質問者からの返答

これに関しては問題ありませんでした。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ