[英]Cron jobs and php scripts
所以,我有一個腳本調用 2 個備份設備的其他腳本。
問題是,如果我手動調用在屏幕會話中打開其他兩個的主腳本,一切正常。 它調用的 2 個腳本基本上通過 php 腳本將數據發送到 sql 服務器。
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 版本與我的用戶帳戶使用的 php 版本不同,5.1 與 5.4 相比
不確定是否有一種簡單的方法可以將其更改為使用我的用戶帳戶 php 設置? 不幸的是,我沒有對盒子的 root 訪問權限。
因此,我運行了一個工作腳本,並添加了 phpinfo(),獲取了路徑信息並將其添加到 cronjob 中,這樣它就會覆蓋默認值。
所以 cronjob 文件的頂部看起來像
SHELL=/bin/bash PATH = /usr/kerberos/bin:/app/php-5.4.3/bin
因此,我運行了一個工作腳本,並添加了 phpinfo(),獲取了路徑信息並將其添加到 cronjob 中,這樣它就會覆蓋默認值。
所以 cronjob 文件的頂部看起來像
SHELL=/bin/bash PATH = /usr/kerberos/bin:/app/php-5.4.3/bin
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.