【Php】接口里调用system()无反应

最开始写了个简单接口,通过system()  调用shell命令。发现shell脚本并没有执行。百度了一番说有可能跟php配置有关系:https://blog.csdn.net/weixin_29344293/article/details/115204347

但是我确认了,我的php环境没有被禁用。于是仔细check了下,发现是脚本名字写错了。改了之后,再次执行,发现接口返回的response跟我预期的不符

我预期就是返回 $ret 变量内容,但实际上shell脚本里的echo内容也返回了,也就是说接口的返回是包含 $ret 和 shell脚本两部分的

解决方法:将shell脚本里的echo输出到文件内容里即可


备注,如果执行shell太长,导致接口超时,可以用nohup的方式执行:

你可能感兴趣的:(【Php】接口里调用system()无反应)