解决PHP中Web程序中shell_exec()执行Shell脚本不成功问题

问题

今天发现在使用定时器的时候,执行一个shell脚本,打印日志正常,然后在系统中不能查到当前Shell脚本执行的结果。

因为使用的是Web程序,对于Shell调用这块也是新手。以前没有遇到过这种问题,只能靠猜了。

判断

1、Shell脚本问题。

验证方式:进入系统控制台,然后直接调用脚本,验证脚本正常。排除脚本本身问题。

2、判断应该问题来自于权限

验证方式:进入控制台,查看执行日志author.log。果然上面提示账号权限有问题。

ls 查看Shell脚本信息,发现Web程序的用户和Shell脚本的权限用户不是同一个账号。将其修改为同一个账号,,再次启动程序问题解决。

结论:

类似问题基本上都是由以上两个方面引起的。有异常的时候多看下日志,基本上的问题都会打印出来的。

更多PHP相关知识,请访问PHP教程!

以上就是解决PHP中Web程序中shell_exec()执行Shell脚本不成功问题的详细内容,更多请关注求知技术网其它相关文章!

发表评论

邮箱地址不会被公开。 必填项已用*标注