![](/img/trans.png)
[英]Running a php script from cron not picking the $_SERVER['host'] wheras running from CLI works
[英]php cron job not working running script from CLI works fine
我有一个脚本可以在Suite CRM中驱动一些东西,只需输入php script.php就可以从命令行轻松运行。
但是当我使用cron运行它时,它在行之后失败
echo "Defined sugarEntry\n";
我也试过在require语句中对路径进行硬编码,并尝试了require_once。
我还在/etc/php.ini中设置了相关的包含路径,这是在cron中使用的php。 还有什么我想念的吗?
<?php
//Don't forget to set the include path in /etc/php.ini
echo "Start \n";
set_include_path(get_include_path() . PATH_SEPARATOR . $full_path);
echo "Include path set to " . get_include_path()."\n";
//error_reporting(E_ERROR);
if(!defined('sugarEntry'))
define('sugarEntry', true);
echo "Defined sugarEntry\n";
require( 'include/entryPoint.php');
echo "Entry point included\n";
require( 'custom/modules/Accounts/controller.php');
echo "Include file set\n";
$controller = new AccountsController();
echo "AccountsController initialised\n";
//$controller->debug = true;
//Loop through all the Accounts records that are a customer
$controller->sync_all_crm_to_smb();
echo "Finished\n";
?>
而不是配置必要的路径,为什么不尝试更简单的方法。 您可以在crontab中执行以下操作:
*/1 * * * * cd <path_to_your_script> & php <script_name>.php
我正在使用* / 1 * * * *作为示例。
<path_to_your_script>
是通过控制台成功执行脚本的目录的路径。
如果这仍然无法解决您的问题,请在您的php脚本中尝试:
#!/usr/local/bin/php
<?php
.......
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.