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

お世話になります。
OSはクライアントの為、恐縮ながら何を使用しているか不明となっております。
PHPバージョンは5.1.6です。

cronを使用して、毎日特定の時間に、メールを配信するPHPスクリプトを実行しようと試みているのですが、エラーメールが返ってきてしまいます。
因みに、URLを直接指定して実行した場合は正常にメールが配信されます。

設定方法は、crontab -e で
0 12 * * * /usr/lib/php -q /home/hoge/public_html/mail.php
と記述しております。

返ってくるエラーメールの内容は、以下の通りです。

Content-Type: text/plain; charset=UTF-8
Auto-Submitted: auto-generated
X-Cron-Env: <SHELL=/bin/sh>
X-Cron-Env: <HOME=/home/hoge>
X-Cron-Env: <PATH=/usr/bin:/bin>
X-Cron-Env: <LOGNAME=hoge>
X-Cron-Env: <USER=hoge>
Message-Id: <xxxxxx@xxxxxxxxxx>
Date: Sun, 28 Sep 2008 12:00:01 +0900 (JST)

/bin/sh: /home/hoge/public_html/mail.php: Permission denied

以上、対策方法についてご存知の方がおられましたら、ご教授よろしくお願い致します。

A 回答 (3件)

>URLを直接指定して実行した場合は正常にメールが配信されます。



じゃ、wgetでURLを指定すればよいでしょう
場合にもよりますがspiderモードでもいけることもあります
    • good
    • 0
この回答へのお礼

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

wgetでURLを直接指定して試してみたところ、
failed: No route to host. とエラーメールが返ってきてしまいました。

お礼日時:2008/09/29 13:06

0 12 * * * /usr/lib/php -q /home/hoge/public_html/mail.php


と書いて、
/bin/sh: /home/hoge/public_html/mail.php: Permission denied
というエラーメッセージは出ません。
これは、
0 12 * * * /home/hoge/public_html/mail.php
と書いたときのエラーメッセージじゃないですか?

php本体のパスを確認して、
0 12 * * * phpのパス -q /home/hoge/public_html/mail.php
と書くのがいいです。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
無事、解決致しました。

phpのパスは /usr/lib/php ではなく /usr/bin/php となっておりました。

早速、
0 12 * * * /usr/bin/php -q /home/hoge/public_html/mail.php
と指定し直しましたところ、正常にメールが配信されました。

お礼日時:2008/09/29 13:19

こんにちは



エラーメッセージから見ると権限が足りないようですね。
スクリプトのパーミッションを確認しては如何でしょうか。
    • good
    • 0
この回答へのお礼

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

パーミッションを確認してみると500となっていて、実行権限が無かったため755に変更致しました。

お礼日時:2008/09/29 13:09

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