程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> linux下使用crontab實現定時PHP計劃任務失敗的原因分析

linux下使用crontab實現定時PHP計劃任務失敗的原因分析

編輯:PHP綜合

很多人在linux下使用crontab實現PHP執行定時任務卻未能成功,不能生成緩存。本文就linux下使用crontab實現定時PHP計劃任務失敗的原因做一分析。

一般我們linux定時執行php代碼例如:

*/5 * * * * /usr/local/php/bin/php /home/wwwroot/1.php

其實這樣是可以執行php代碼的。

但是為什麼很多朋友在1.php寫的生成一個緩存文件沒有生成呢?

這個要涉及到crontab執行php的相對路徑問題.

注意在執行文件中,有包含文件的,如:

include_once'./mysql.php'; 

當php代碼中,用的是相對路徑時,只有進入到那個目錄下,

然後執行/usr/local/php/bin/php /home/wwwroot/1.php 才能引用mysql.php生效。

解決方法如下:

*/10 * * * * cd /home/wwwroot && /usr/local/php/bin/php /home/wwwroot/1.php

同時也這樣緩存才能生成在 /home/wwwroot。此處需要特別注意!

這是大部分寫的所謂linux定時執行php沒有提到的,也最容易產生誤區的。

當然方法還有很多,還可以設置環境變量之類的。這個只是一個簡單的方法。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved