Magento Cronjob 错误也找不到心跳
Magento Cronjob error also Heartbeat not found
当我 运行 任务时 :
* * * * * /bin/bash /home/soulexhi/public_html/scheduler_cron.sh --mode always
* * * * * /bin/bash /home/soulexhi/public_html/scheduler_cron.sh --mode default
根据 Cron Scheduler 告诉我,我通过电子邮件收到此错误消息
帮助!!
Content-type: text/html;
<br />
<b>Warning</b>: require_once(/abstract.php): failed to open stream: No such file or directory in <b>/home/soulexhi/public_html/shell/scheduler.php</b> on line <b>3</b><br /> <br /> <b>Fatal error</b>: require_once(): Failed opening required '/abstract.php' (include_path='.:/usr/lib/php:/usr/local/lib/php') in <b>/home/soulexhi/public_html/shell/scheduler.php</b> on line <b>3</b><br />
在文件'magento_root/shell/scheduler.php'的开头有一个require_once,我改为如下:
if (!empty($_SERVER['SCRIPT_NAME']))
require_once dirname($_SERVER['SCRIPT_NAME']) . DIRECTORY_SEPARATOR . 'abstract.php';
else
require_once dirname(__FILE__) . DIRECTORY_SEPARATOR . 'abstract.php';
但是没有用。有人知道吗?
已解决:这是 PHP 版本的 Cron Jobs。
站点的 PHP 版本设置正确,这就是它正常工作的原因;但是 Cron Jobs 在服务器本机 PHP 5.3 时是 运行,这就是为什么我只在 运行 Cron 时才收到错误。我更新到5.5版本了。
更改了 Cron 命令:
php /home/mydomainname/public_html/cron.php
to
php55 /home/mydomainname/public_html/cron.php
在 cron.php
$isShellDisabled = (stripos(PHP_OS, 'win') === false) ? $isShellDisabled : true;
在此行之后,添加:
$isShellDisabled = true;
当我 运行 任务时 :
* * * * * /bin/bash /home/soulexhi/public_html/scheduler_cron.sh --mode always
* * * * * /bin/bash /home/soulexhi/public_html/scheduler_cron.sh --mode default
根据 Cron Scheduler 告诉我,我通过电子邮件收到此错误消息 帮助!!
Content-type: text/html;
<br />
<b>Warning</b>: require_once(/abstract.php): failed to open stream: No such file or directory in <b>/home/soulexhi/public_html/shell/scheduler.php</b> on line <b>3</b><br /> <br /> <b>Fatal error</b>: require_once(): Failed opening required '/abstract.php' (include_path='.:/usr/lib/php:/usr/local/lib/php') in <b>/home/soulexhi/public_html/shell/scheduler.php</b> on line <b>3</b><br />
在文件'magento_root/shell/scheduler.php'的开头有一个require_once,我改为如下:
if (!empty($_SERVER['SCRIPT_NAME']))
require_once dirname($_SERVER['SCRIPT_NAME']) . DIRECTORY_SEPARATOR . 'abstract.php';
else
require_once dirname(__FILE__) . DIRECTORY_SEPARATOR . 'abstract.php';
但是没有用。有人知道吗?
已解决:这是 PHP 版本的 Cron Jobs。
站点的 PHP 版本设置正确,这就是它正常工作的原因;但是 Cron Jobs 在服务器本机 PHP 5.3 时是 运行,这就是为什么我只在 运行 Cron 时才收到错误。我更新到5.5版本了。
更改了 Cron 命令:
php /home/mydomainname/public_html/cron.php
to
php55 /home/mydomainname/public_html/cron.php
在 cron.php
$isShellDisabled = (stripos(PHP_OS, 'win') === false) ? $isShellDisabled : true;
在此行之后,添加:
$isShellDisabled = true;