2013-03-13 148 views
0

我設置了一個cron作業(在基於Webmin的Virtualmin中)執行一個簡單的測試腳本,它工作得很好。Cron作業不執行特定的php腳本

使用的cron命令是:

的/ usr /斌/ PHP -q /home/myuser/domains/mysite.com/public_html/mailtest.php

URL是:

www.mysite.com/mailtest.php

的 「mailtest.php」 的內容是:

<?php 
$to = "[email protected]"; 
$subject = "Test mail"; 
$message = "Hello! This is a simple email message."; 
$from = "[email protected]"; 
$headers = "From:" . $from; 
mail($to,$subject,$message,$headers); 
echo "Mail Sent."; 
?> 

無w我試着執行另一個腳本,我當然修改了路徑和文件名,它們只是:

/usr/bin/php -q /home/myuser/domains/mysite.com/public_html/myfolder/myscript。 php

但這裏我不知道爲什麼我的腳本沒有執行。當我去他的相關網址 「www.mysite.com/myfolder/myscript.php」腳本很好地執行。

「myscript.php」 的內容是:

<?php 
require_once(dirname(__FILE__).'/includes/includes.php'); 

$mails = POP3Mailer::ProcessMails(); 
require_once($BASE_PATH.'/includes/footer.php'); 
?> 

有人有一個想法,爲什麼這個cron不會與 「myscript.php」 火???

感謝您的時間

+0

嗯,我解決我的問題。它與有一些代碼不兼容的「myscript.ph」有關。我不知道這是可能的......無論如何感謝Romain Braun和5k7試圖幫助。乾杯 – dotcom22 2013-03-15 14:06:07

回答

0

我不確定。但也許你應該檢查這個文件的權限。使用chmod命令。

0

Cron正在非常基礎的環境中工作。創建新文件。使其可執行(chmod + x)並將其添加到cron。在文件的開頭添加#!/ bin/bash,並通過/ usr/local/bin/php添加腳本。

你的文件應該是這樣的:

#!/bin/bash 
/usr/local/bin/php /url/to/your/script.php