2012-10-01 67 views
0

我已經爲Magento設置了每兩小時運行的cronjob,這是我的主機可以設置的最快速度。然而,通訊不會被髮送,直到我真的進入我的主機的控制面板,並點擊特定cronjob的'運行'按鈕。Magento cron作業只在明確運行時發送通訊

我做錯了什麼?我的cron路徑設置爲:/bin/sh /usr/www/users/FTP_USER/cron.sh

+0

這個問題爲您的託管服務提供商 – Serjio

+0

難道你不覺得我已經問過他們嗎?他們告訴我的是,cron被執行了,並且它在Magento的一邊沒有執行任何東西。 –

回答

0

我想這很可能是一種形式或其他形式的權限/ PATH問題。當您通過點擊控制面板中的某些內容來手動觸發事件時,它可能會以Apache用戶身份運行(www-data或同等版本,具體取決於平臺)。 cron很可能會以不同的用戶身份運行。

假設您指的是核心新版本cron Mage_Newsletter_Model_Observer::scheduledSend,那麼cwd對於相對包含路徑是不正確的。這使得最可能的罪魁禍首成爲a)。cron用戶沒有cron.sh的執行權限,b。)cron用戶無權訪問服務器上的郵件應用程序,因爲它不包含在用戶PATH。

0

以我的經驗cron.sh腳本還沒有達到它。因此我只運行cron.php。這需要php cli正確安裝足夠的RAM和明智的超時。

在crontab嘗試:

* * * * * /usr/bin/php /home/USER/public_html/cron.php >> /home/USER/public_html/var/log/cron.log 2>&1 

我還留着一個日誌文件中無功/日誌/ cron.php,這樣我可以看到一個cron作業中的錯誤。