我已经为此奋斗了几个小时,但似乎无法解决。
尝试了 exec()、shell_exec() 和 system()。什么都不起作用。
我有这个:
exec("/usr/bin/php /var/www/vhosts/domain.com/httpdocs/shell/send.php >> /var/www/vhosts/domain.com/httpdocs/shell/paging.log &");
send.php 只是有:
echo 'works';
但日志中没有显示任何内容。我用谷歌搜索并阅读了这里的内容,但找不到任何帮助。
我正在运行 php v.5.3.8。
安全模式已开启
我很确定这是 php 的路径,但无法真正找到如何找到它,所以我继续使用 phpinfo()。
exec('whoami');什么也没做。它应该显示在浏览器中吗?或者发邮件给你什么?
有任何想法吗?
根据 PHP 手册exec
功能:
启用安全模式后,只能执行指定范围内的文件
safe_mode_exec_dir。出于实际原因,目前不允许
在可执行文件的路径中包含 .. 组件。
Check http://php.net/manual/en/ini.sect.safe-mode.php#ini.safe-mode-exec-dir http://php.net/manual/en/ini.sect.safe-mode.php#ini.safe-mode-exec-dir
另外,请注意 Web 服务器用户必须具有写入日志文件的权限。
编辑:至关闭安全模式,不仅检查php.ini文件,还可以虚拟主机 Web 服务器中的特定配置,无论是 Apache、NginX 还是其他服务器。如果您使用 Plesk,请在 vhosts 中查找 httpd.include,并确保安全模式也设置为关闭。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)