最近我在wamp服务器上传递了一个问题。我需要在PHP中使用shell_exec()
函数来运行一些外部shell脚本(一些校验和文件)。但是在我的wamp服务器中,该功能默认是禁用的。我在谷歌搜索但我找不到解决方案。所以我尝试将该代码放在实时服务器中。但也存在同样的问题。我联系了该服务器的技术人员,但他说我们不能启用shell_script。这是安全暴力。
所以唯一的方法就是尝试使用wamp服务器...如何启用 shell_exec()
或exec()
..?
答案 0 :(得分:7)
下面这行是我读到这个问题的最好的一行:“你需要在位于\ Apache2 \ bin文件夹中的php.ini中禁用安全模式,而不是php文件夹。在加载新文件后立即重启Apache2服务设置“。
解决方案是:
停止Wamp-Server的所有服务并关闭程序
打开... / wamp / bin / apache / Apache2。。 /bin/php.ini
将php.ini复制到桌面并打开它
设置 safe_mode_exec_dir (在=之后的行是空的,所以它开启!!!)将其关闭!
保存
复制回dir(可能需要管理员权限)
启动wamp-server
享受exec()和co。
答案 1 :(得分:1)
我遇到了同样的问题,并尝试了很多解决方案。对我有用的是以管理员身份运行XAMPP。
答案 2 :(得分:0)
打开wamp使用的php.ini
文件,找到disable_functions
部分,更改它并重新启动服务器。
答案 3 :(得分:0)
您需要在位于\Apache2\bin
文件夹中的php.ini中禁用安全模式,而不是php文件夹。
在加载新设置后立即重启Apache2服务。
答案 4 :(得分:0)
不是“服务器问题”。建议不要使用此配置。您必须以管理员模式运行WAMP服务器。
以下是一些信息:PHP doesn't work with shell_exec(), system() or passthru()
答案 5 :(得分:0)
`ls -hal`
Windows等效项
`dir \AH`
答案 6 :(得分:0)
尝试使用明确用于开发的WAMP服务器堆栈,例如WPN-XM或XAMPP。 没有开发人员的任何安全限制。 因此,在执行system(),shell_exec(),passthrough()时,您不会遇到麻烦。
答案 7 :(得分:0)
我认为我们可以使用这些步骤
享受!!!
答案 8 :(得分:0)
<?php
function _exec($cmd)
{
shell_exec('SCHTASKS /F /Create /TN _proc /TR "' . $cmd . '"" /SC DAILY /RU INTERACTIVE');
shell_exec('SCHTASKS /RUN /TN "_proc"');
shell_exec('SCHTASKS /DELETE /TN "_proc" /F');
}
_exec("mspaint.exe");
?>
相反是一个黑客,但如果你试图用gui开始任何东西,或挂起,这就是我发现的有效。
答案 9 :(得分:-2)
我刚刚找到了更好的解释,但还没有尝试过。看看 - http://discussion.accuwebhost.com/linux-server/1096-how-enable-shell_exec-function-one-account.html