2014-04-18 457 views
0

我有一個名爲urlretrieve.php的腳本,放在我的Web服務器上。假設網址是www.example.com/urlretrieve.php,當您訪問此網站時,會從其他網站下載一個文件並將其放入與web服務器上的urlretrieve.php相同的文件夾中。我需要每週訪問一次該網站(執行)一次。我的問題是,我的cron作業命令應該是什麼?目前我正在使用:CRON執行PHP腳本的錯誤

php /home/user/public_html/urlretrieve.php 

並且它不工作。我測試了很多其他人,但沒有運氣。

我正在使用CPANEL。

這是urlretrieve.php腳本

<?php 
$url = "ftp://alt.ncsbe.gov/data/ncvhis1.zip"; 
$fh = fopen(basename($url), "wb"); 
$ch = curl_init($url); 
curl_setopt($ch, CURLOPT_FILE, $fh); 
curl_exec($ch); 
curl_close($ch); 
?> 
+0

$ PATH變量可能不包含「php」的位置。假設它正在運行CentOS(使用cPanel),請嘗試將''php''更改爲''/ usr/bin/php''。另外,crontab文件中的完整cron條目應該是''@weekly/usr/bin/php/home/user/public_html/urlretrieve.php'',但是如果它是通過不需要的cPanel來完成的話。 – ub3rst4r

+0

是的,我有四組數字,現在每個星期五都設置爲4,但爲了測試目的,我一直在不斷改變它們。我昨天試過/ usr/bin/php,沒有運氣。這就是我的服務器管理員告訴我的:「你的命令看起來不錯,我認爲一切都應該正常運行,只需調用」php「就可以工作,而不必在bin或庫連接中定位命令。」 – user3529701

回答

0

我只是測試這一點。作品。

33 14 * * 5 curl ftp://alt.ncsbe.gov/data/ncvhis1.zip > /home/user/ncvhis1.zip 
+0

不幸的是既沒有工作。有沒有可能在服務器上設置不正確? – user3529701

+0

當然,curl可能沒有安裝,它可能不在路徑中,你可能會使用不同的cron守護進程。請記住,cron將在週一午夜運行。不是每週1次。如果你想要一些更抽象的東西,你需要閱讀你的cron服務器文檔。 –

+0

我設置了cron在星期五2:20運行,用 20 14 * * 5 curl ftp://alt.ncsbe.gov/data/ncvhis1.zip> \/home/user/ncvhis1 _ $(date「+」 %y%m%d「)。zip – user3529701