PHP 脚本的 Cron 任务无法正常工作

PHP 脚本的 Cron 任务无法正常工作

我的一位客户有 PHP 脚本,可以加载 cvs 文件。当他通过 WWW 执行此脚本时,它可以正常工作 - 加载数据的日志存储在 /var/php/CLIENT/loaded.log 中。但是当我尝试由 Apache 执行的同一用户使用相同的配置 (php.ini) 执行同一脚本时,我在 loaded.log 中没有收到任何数据。如果我通过 Cron 执行此操作,情况也一样。Syslog 说 Cron 收到任何错误。

您有什么线索告诉我应该去哪里搜索吗?

答案1

当 PHP 脚本通过 Apache 运行时可以工作,但通过 cron 运行时却不行时,一些常见的问题可能是脚本使用仅在 Web 请求期间可用的变量,例如$_SERVER变量(例如$_SERVER['DOCUMENT_ROOT']或其他变量)或$_GET变量,或者它可能是用于 Web 请求与命令行的 PHP 不同。

尝试使用您列出的 su 命令在 shell 中自己运行脚本,但之后php5.3添加-d display_errors=on并查看是否收到任何错误输出。

相关内容