Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/magento/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Magento cron作业仅在显式运行时发送新闻稿_Magento_Cron - Fatal编程技术网

Magento cron作业仅在显式运行时发送新闻稿

Magento cron作业仅在显式运行时发送新闻稿,magento,cron,Magento,Cron,我已经为Magento设置了cronjob,使其每两小时运行一次,这是我的主机可以设置的最快速度。然而,在我真正进入主机的控制面板并单击特定作业的“运行”按钮之前,新闻稿不会被发送 我做错了什么?我的cron路径设置为:/bin/sh/usr/www/users/FTP\u USER/cron.sh我想这很可能是某种形式的权限/路径问题。当您通过单击控制面板中的某个内容手动触发事件时,它可能会以Apache用户的身份运行(www数据或等效数据,具体取决于平台)。cron很可能会以与此不同的用户身

我已经为Magento设置了cronjob,使其每两小时运行一次,这是我的主机可以设置的最快速度。然而,在我真正进入主机的控制面板并单击特定作业的“运行”按钮之前,新闻稿不会被发送


我做错了什么?我的cron路径设置为:
/bin/sh/usr/www/users/FTP\u USER/cron.sh

我想这很可能是某种形式的权限/路径问题。当您通过单击控制面板中的某个内容手动触发事件时,它可能会以Apache用户的身份运行(www数据或等效数据,具体取决于平台)。cron很可能会以与此不同的用户身份运行


假设您所指的是核心新信cron
Mage\u Newsletter\u Model\u Observer::scheduledSend
,那么
cwd
对于相对包含路径不正确的情况不太可能存在任何问题。这就留下了最可能的罪魁祸首a.)cron用户没有对您的cron.sh的执行权限,b.)cron用户没有访问服务器上的邮件应用程序的权限,因为它不包括在用户路径中。

根据我的经验,cron.sh脚本不适合它。因此,我只运行cron.php。这需要正确设置PHPCLI,并具有足够的RAM和合理的超时

在您的crontab中,请尝试:

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

我还在var/log/cron.php中保存了一个日志文件,这样我就可以看到cron作业期间发生的错误。

这是因为事件观察程序是基于上下文加载的(adminhtml、frontend或在您的案例中是crontab)。通讯发送观察员不在crontab列表中,因此无法发送电子邮件


请参阅本文:

这是您的主机提供商的问题您不认为我已经问过他们了吗?他们只告诉我cron已经被执行了,而它在Magento那边,没有执行任何东西。