Cron作业和PHP脚本

时间:2017-10-29 05:48:11

标签: php bash cron

所以,我有一个脚本调用另外两个备份设备的脚本。

问题是,如果我手动调用主脚本在屏幕会话中打开其他两个,一切正常。 它调用的2个脚本基本上通过php脚本将数据发送到sql server。

IE 我有一行

$link = mysql_connect("server ip", "username", "password", "database");

手动运行(从我的用户目录运行)它运行正常。

如果我运行了cron作业,它将运行正常,当它到达脚本的php部分时会出现错误

PHP Fatal error:  Call to undefined function mysql_connect() in /export/home/myname/my_Scripts/php_script_its_running

所以,如果我手动运行它是正常的,而不是当我通过cron运行它时,我假设它正在运行一个不同的php实例,因为它是由cron运行或类似的奇怪的球?或者,idk,还不是100%熟悉cron的工作。

因此,当我进行更多调试时,它看起来使用的是与我的用户帐户使用的不同版本的PHP,5.1与5.4相比

不确定是否有一种简单的方法可以将其更改为使用我的用户帐户php设置?不幸的是我没有root访问权限。

答案 所以,我运行了一个工作脚本,并添加了phpinfo(),抓取了路径信息并将其添加到cronjob,因此它将覆盖默认值。

所以cronjob文件的顶部看起来像

SHELL = /斌/庆典 PATH = /usr/kerberos/bin:/app/php-5.4.3/bin

1 个答案:

答案 0 :(得分:1)

回答所以,我运行了一个工作脚本,并添加了phpinfo(),抓取路径信息并将其添加到cronjob中,以便覆盖默认值。

所以cronjob文件的顶部看起来像

SHELL = / bin / bash PATH = /usr/kerberos/bin:/app/php-5.4.3/bin