2010-01-10 138 views
6

我正在开发一个需要使用Cron的web应用程序。我希望通过像Wordpress这样的自动安装过程来轻松设置。在安装Cron之前,我一直没有任何问题写安装脚本。请告诉我,如果我可以做到这一点。使用php脚本安装cron作业

回答

9

你只需要创建cron的文件,然后使用exec来设置一个cron的:

$cron_file = 'cron_filename'; 
// Create the file 
touch($cron_file); 
// Make it writable 
chmod($cron_file, 0777); 
// Save the cron 
file_put_contents($cron_file, '* * * * * your_command'); 
// Install the cron 
exec('crontab cron_file'); 

这就要求其在PHP下运行,用户必须做出的crontab的权利。这个cron文件在默认情况下会替换该用户的任何其他cron,因此请确保询问用户是否要应用cron。还要确保你正在写入crontab文件的文件夹是可写的。

+0

甜蜜的感谢。 – 2010-01-10 14:01:50

+1

不要使用'chmod 0777'。权利应该限制在最低限度,在这种情况下'0600'。而且,如前所述,必须允许PHP解释器编辑crontab,即便如此,它也可能与来自同一用户的其他cronjob发生冲突。 – deamon 2010-01-10 14:05:16

+0

所以如果CronTab无法访问Apache它不行吗?这是我害怕的。 – 2010-01-10 14:11:35