首页 > 编程知识 正文

仅使用cron执行php文件,php cron

时间:2023-12-27 22:26:27 阅读:324307 作者:QXLJ

本文目录一览:

cron可以每分钟执行一次PHP文件中某个方法吗

可以,不过这个调用方法不能再cron里面执行,要在php里面调用才可以,所以其实有点不够灵活,但是可以满足你的需求的

如何使用Ubuntu中的Crontab定时执行PHP文件

先确认自己在LINUX Ubuntu 服务器上php的安装模式,以CGI 模块还是Apache模块方式安装? 如果不确定php安装模式,可以使用 phpinfo() 函数查看:将?php phpinfo(); ? 写在php文件中上传到网站服务器,访问该页面,就在页面顶部我们找到“Server API”,如果类似“Apache 2.0 Handler”,那么就是apache模块;否则php是CGI 模式(shell 命令行模式)。这两种不同的php安装模式,正对应于前面介绍的ubuntu crontab 定时执行php的两种解决方法。

CGI 编译

如果Server API是cgi,那么在需要cron执行的php脚本的第一行额外加入一段代码#!/usr/bin/php -q(类似PERL语法),指定服务器中php可执行程序的位置,具体步骤如下:

1. 确认Ubuntu系统已经安装了php5-cli模块,安装命令:apt-get install php5-cli。在目录 /usr/bin/php下生成 php可执行程序。

2. 编辑待定时执行的php脚本文件crontab.php,如:

#!/usr/bin/php -q

?php

$file = “/var/www/”.date(‘H’).’_’.date(‘i’).’_’.date(‘s’).’.txt’;

file_put_contents($file,date(‘Y-m-d’));

?

3. 编辑 crontab 任务:

打开终端,输入命令:crontab -e,

Select an editor. To change later, run ‘select-editor’.

1. /bin/ed

2. /bin/nano —- easiest

3. /usr/bin/vim.tiny

选择一个Ubuntu编辑器后,编辑/tmp/crontab.AuN7IQ/crontab 文件:

# m h dom mon dow command

在下面添加定时执行命令:

* * * * * php /path/to/your/cron.php

5个星号分别代表定时指定每分、小时、日、月、周。如每天的下午7点执行crontab.php,命令为:

* 19 * * * php /var/www/cron/crontab.php

然后按Ctrl+O保存,Ctrl+X退出。

4. 执行以下Crontab命令行

Shell crontab crontab

确认crontab.php的权限为可执行("chmod 755 /var/www/cron/crontab.php")。

Apache 模块

如果php安装是以 apache 模式运行的,那么在要在ubuntu服务器定时执行的php脚本开头就不用加 #!/usr/bin/php -q 这一行。php脚本在ubuntu 通过crontab的定时执行通过Lynx浏览器的自动访问来完成。

1. Lynx浏览器安装。

Lynx浏览器是一款轻便的web浏览器,使用于大部分Unix 和Linux系统环境。安装命令:sudo apt-get install lynx。

2. 编辑cron任务,命令crontab -e

lnmp环境,cron如何执行php文件?

呃,为什么直接改crontab文件不好用crontab -e,然后输入上面的就好用。。。

如何使用Linux的Crontab定时执行PHP脚本的方法

*/1 * * * * /usr/local/php/bin/php /home/wwwroot/clewx/web/linux.php Crontab Dingdian op 14186

这是我服务器上的crontab粘贴给你了。

1、*/1是代表每分钟。

2、/usr/local/php/bin/php 是php脚本。意思就是拿PHP去执行,跟拿迅雷下载东西一个道理,都是需要指定一个东西去执行。

3、/home/wwwroot/clewx/web/linux.php 是php程序

4、Crontab Dingdian op 14186 是4个参数,因为我的程序是MVC的,所以执行的是Crontab模块的Dingdian控制器的op方法,14186是一个参数

5、上linux.php代码,直接使用$argv可以接收参数

    $_GET['m'] = $argv[1];

    $_GET['c'] = $argv[2];

    $_GET['a'] = $argv[3];

    $_GET['id'] = $argv[4];

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。