所以我正在制作一个供个人使用的简单网站,它通过Ajax发送一个Post请求,PHP代码是这样的:
$cmd = "some command";
$r = shell_exec($cmd);
echo $r;
现在,我第一次发送请求时它有效,但是如果我发送更多请求而不刷新整个页面,则它不会返回任何内容。 PHP脚本确实执行,只是shell_exec不返回任何内容。我不知道是什么原因造成的。 (Debian,Apache2,PHP7.0)
ajax代码:
$.post("exec.php", {command: val}).done(function(data){
self.outp.append(data);
});
我确认val是正确的,如果在PHP中我在$ r中添加了一些内容(例如:$ r。=“ test”),它将返回该值。
@Edit我发现使用POST的GET插入会使问题消失,它并不能真正解决问题,但这是什么。