问题
今天发现在使用定时器的时候,执行一个shell脚本,打印日志正常,然后在系统中不能查到当前Shell脚本执行的结果。
因为使用的是Web程序,对于Shell调用这块也是新手。以前没有遇到过这种问题,只能靠猜了。
判断
1、Shell脚本问题。
立即学习“PHP免费学习笔记(深入)”;
验证方式:进入系统控制台,然后直接调用脚本,验证脚本正常。排除脚本本身问题。
2、判断应该问题来自于权限
验证方式:进入控制台,查看执行日志author.log。果然上面提示账号权限有问题。
ls 查看Shell脚本信息,发现Web程序的用户和Shell脚本的权限用户不是同一个账号。将其修改为同一个账号,,再次启动程序问题解决。
结论:
类似问题基本上都是由以上两个方面引起的。有异常的时候多看下日志,基本上的问题都会打印出来的。
更多PHP相关知识,请访问PHP教程!
以上就是解决PHP中Web程序中shell_exec()执行Shell脚本不成功问题的详细内容,更多请关注php中文网其它相关文章!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号