红联Linux门户
Linux帮助

Crontab运行php脚本

发布时间:2014-12-05 15:11:01来源:linux网站作者:21aspnet

首先,确认 PHP 可执行文件的位置 —— 对于大多数 Linux 系统,几乎肯定是 /usr/bin/php。如果不确定其位置,请在命令行中键入 which php 并查看响应内容。

其次,键入以下代码,确保将 /usr/bin/php 替换为 PHP 可执行文件的实际路径。

<?php 
#!/usr/bin/php -q 
print date("Y-m-d H:i:s")."\n"; 
?> 

权限与转码

#chmod +x test.php
#dos2unix test.php

Crontab  -e

按其语法定义即可

例如5分钟运行一次

*/5 * * * * /website/test.php >> /dev/null &

或者另外一种形式直接在Crontab中配置

*/2 * * * * /usr/bin/php -f  /var/www/html/*.php


用了两天时间完成这个任务,其实一点也不难,只是因为对PHP不熟悉,才花了这么长时间。
本来以前研究过crond的,可是和PHP结合还是第一次,第一次嘛,原谅自己了。
就是可惜了我一个周末的休息时间...
OK,以下是配置步骤:
1.Linux下必须编译安装PHP解释器,在安装完成后,要将安装目录下${PHP}/bin/php 文件复制到
/usr/bin/下,并使用chmod +x ./php 为其添加可执行权限,ok了,
然后在linux命令行下输入:php -q *.php
执行一个php程序,以验证是否解释器工作正常
2.发布php文件:将编写好的php程序发布到apache的发布目录:如:/var/www/html下
加权限:chmod +x /var/www/html/*.php
3.创建定时任务:
(1)启动linux定时服务:service crond start
(2)查看当前定时任务: crontab -l
(3)添加新定时任务:crontab -e
在打开的文件中编辑:
*/2 * * * * /usr/bin/php -f  /var/www/html/*.php
表示每2分钟执行一次/var/www/html/*.php文件
(注: -f 很重要,不能修改成 -q )