crontab无法执行php的解决方法


Posted in PHP onJanuary 25, 2016

本文分析了crontab无法执行php的解决方法。分享给大家供大家参考,具体如下:

用crontab跑php程序时,如何去调试,各人有各人的方法。我也有套方法,看一下,我是如何解决crontab执行不了php程序这个问题的。

一、php文件有没有执行权限

[root@linux cron]# ls -al |grep del

 -rwxr-xr-x  1 zwh  ftpgroup  494 10-20 16:42 del_redis.php 
如果没有X,说明没有执行权限,当然也执行不了。如果你不知道你登录的用户所在的组是不是有权限,直接给所有组都加上权限就行了。方法如下:

[root@linux cron]# chmod +x ./del_redis.php

二、如果有执行权限了,还是执行不了

解决方法如下

1. 在php程序里面写log(例如:error_log()这个函数),这也是必须的,因为crontab定时执行,要是没有log,你怎么知道程序执行的结果怎么样。这样我们可以通过log来查看crontab执行的情况。

2. 也可以直接在crontab里面,将执行的结果输出一个文件当中。然后在这个文件当中查看执行情况。例如:

*/10 * * * * /usr/local/php/bin/php /var/www/cron/del_redis.php >> /home/zhangy/cron.txt

3. 用crontab来执行php,是不走apache,nginx,所以$_SERVER,$_ENV这类变量根本用不了。所以检查一下php代码中有没有这类变量,如果有拿掉。

4. php的相对路径问题

因为有思维定势在做怪,这个问题也是最容易忽视的。

include_once'./mysql.php';

当php代码中,用的是相对路径时,只有进入到那个目录下执行/usr/local/php/bin/php /var/www/cron/level_rank.php才能生效。这个问题我遇到过至少二次,但是再遇到时还是想不起来。

解决方法如下:

*/10 * * * * cd /var/www/cron && /usr/local/php/bin/php /var/www/cron/level_rank.php

或者 在php代码中用绝对路径

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
php+mysql开源XNA 聚合程序发布 下载
Jul 13 PHP
php小型企业库存管理系统的设计与实现代码
May 16 PHP
PHP中数字检测is_numeric与ctype_digit的区别介绍
Oct 04 PHP
php模拟js函数unescape的函数代码
Oct 20 PHP
使用PHP获取汉字的拼音(全部与首字母)
Jun 27 PHP
PHP用身份证号获取星座和生肖的方法
Nov 07 PHP
使用PHP备份MySQL和网站发送到邮箱实例代码
Nov 28 PHP
通过php添加xml文档内容的方法
Jan 23 PHP
php实现根据IP地址获取其所在省市的方法
Apr 30 PHP
PHP的Laravel框架结合MySQL与Redis数据库的使用部署
Mar 21 PHP
php表单加入Token防止重复提交的方法分析
Oct 10 PHP
php删除一个路径下的所有文件夹和文件的方法
Feb 07 PHP
win7安装php框架Yii的方法
Jan 25 #PHP
php结合md5实现的加密解密方法
Jan 25 #PHP
PHP几个实用自定义函数小结
Jan 25 #PHP
php代码架构的八点注意事项
Jan 25 #PHP
详解js异步文件加载器
Jan 24 #PHP
PHP导出Excel实例讲解
Jan 24 #PHP
PHP验证码生成原理和实现
Jan 24 #PHP
You might like
WINDOWS服务器安装多套PHP的另类解决方案
2006/10/09 PHP
用PHP制作的意见反馈表源码
2007/03/11 PHP
php中定时计划任务的实现原理
2013/01/08 PHP
浅谈PHP中如何实现Hook机制
2017/11/14 PHP
Windows上php5.6操作mongodb数据库示例【配置、连接、获取实例】
2019/02/13 PHP
dropdownlist之间的互相联动实现(显示与隐藏)
2009/11/24 Javascript
js动态设置鼠标事件示例代码
2013/10/30 Javascript
javascript函数中参数传递问题示例探讨
2014/07/31 Javascript
js实现的二级横向菜单条实例
2015/08/22 Javascript
js document.getElementsByClassName的使用介绍与自定义函数
2016/11/25 Javascript
史上最全JavaScript数组去重的十种方法(推荐)
2017/08/17 Javascript
原生JS实现 MUI导航栏透明渐变效果
2017/11/07 Javascript
微信小程序列表中item左滑删除功能
2018/11/07 Javascript
js实现网页同时进行多个倒计时功能
2019/02/25 Javascript
微信小程序云开发之云函数详解
2019/05/16 Javascript
[01:03:41]完美世界DOTA2联赛PWL S3 DLG vs Phoenix 第一场 12.17
2020/12/19 DOTA
分享Python切分字符串的一个不错方法
2018/12/14 Python
Django 多表关联 存储 使用方法详解 ManyToManyField save
2019/08/09 Python
python脚本实现音频m4a格式转成MP3格式的实例代码
2019/10/09 Python
在python中计算ssim的方法(与Matlab结果一致)
2019/12/19 Python
python打印n位数“水仙花数”(实例代码)
2019/12/25 Python
使用Puppeteer爬取微信文章的实现
2020/02/11 Python
基于Python计算圆周率pi代码实例
2020/03/25 Python
django 利用Q对象与F对象进行查询的实现
2020/05/15 Python
ASOS英国官网:英国在线时装和化妆品零售商
2017/05/19 全球购物
C语言变量的命名规则都有哪些
2013/12/27 面试题
英文版区域经理求职信
2013/10/23 职场文书
计算机专业毕业生的自我评价
2013/11/18 职场文书
公司企业表扬信
2014/01/11 职场文书
环保建议书500字
2014/05/14 职场文书
专科应届毕业生求职信
2014/06/04 职场文书
环保宣传标语
2014/06/12 职场文书
大学毕业典礼演讲稿
2014/09/09 职场文书
银行奉献演讲稿
2014/09/16 职场文书
2015年公司行政后勤工作总结
2015/05/20 职场文书
基于python定位棋子位置及识别棋子颜色
2021/07/26 Python