重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
这篇“linux定时执行php启动任务脚本怎么写”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“linux定时执行php启动任务脚本怎么写”文章吧。
成都创新互联长期为1000多家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为东丽企业提供专业的成都网站制作、成都网站建设、外贸营销网站建设,东丽网站改版等技术服务。拥有十多年丰富建站经验和众多成功案例,为您定制开发。
第一步:创建一个定时脚本文件cron.sh(文件名随意以.sh结尾)。
参考代码如下(log.txt是个日志文件方便查看是否有输出内容):
echo "supervisorctl restart..." >> /var/www/html/log.txt start_time=$(date) echo $start_time >> /var/www/html/log.txt echo >> /var/www/html/log.txt supervisorctl restart all end_time=$(date) echo "supervisorctl end" >> /var/www/html/log.txt echo $end_time >> /var/www/html/log.txt echo >> /var/www/html/log.txt
我这边利用supervisorctl来管理php进程(关于supervisorctl的使用可以查看官方文档),当然也可以利用其他方式。
这里举个例子来简单说明supervisorctl的使用。
首先需要安装supervisorctl,在终端下执行 yum install -y supervisor,
supervisorct默认安装在/etc/supervisor目录下;
完成后,在/etc/supervisor 路径下有个配置文件supervisord.conf,打开后在最后有个[include]后配置一下files如下:
files = /etc/supervisor/conf.d/*.conf
然后就可以在/etc/supervisor/conf.d目录下创建自己的配置文件;
例如创建文件test.conf(我这边是php laravel框架执行的一个消费任务队列)文件内容配置如下:
[program:rabbitmq-comsumer-1] process_name=%(program_name)s_1 command=php /var/www/html/app/artisan rabbitmq:consumer 1 autostart=true autorestart=true user=root numprocs=1 redirect_stderr=true stdout_logfile=/var/www/html/app/storage/logs/rabbitmq-comsumer-log-1.log
第二步:其次编写定时任务内容,在终端控制台输入 vim /etc/crontab 回车;在文件里写入如下代码:
0 */2 * * * root /var/www/html/cron.sh
注:0 */2 * * *(这是定时任务执行语法,我这边是每2小时执行,也就是0:00,2:00,...自动执行;相关语法请百度查阅)
第三步:保存文件,然后使其生效(这一步很重要!)执行如下命令:
crontab /ect/crontab
最后可以使用以下命令查看修改后的结果,如果看到出现 0 */2 * * * root /var/www/html/cron.sh 则说明已经生效:
crontab -l
以上就是关于“linux定时执行php启动任务脚本怎么写”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注创新互联行业资讯频道。