2026-04-24 13:34:00
PHP在服务器无法执行exec命令的解决方法如下:
修改php.ini配置文件
找到服务器上的php.ini文件(路径可能因环境而异,例如Windows系统常见于C:WINDOWS或PHP安装目录)。
搜索关键词disable_functions,删除其中的exec和shell_exec(这两个函数默认可能被禁用)。
保存文件并重启Web服务器(如Apache/Nginx)以使配置生效。
调整cmd.exe文件权限(仅限Windows系统)
进入系统目录C:WINDOWSsystem32,找到cmd.exe文件。
右键选择“属性”→“安全”选项卡,添加Internet来宾账户(如IUSR_)。
为该账户分配“读取与运行”及“读取”权限,确保PHP进程有权限调用系统命令。
验证与调试
创建一个测试PHP文件(如test.php),内容为<?php echo exec('whoami'); ?>,通过浏览器访问该文件。
若返回当前用户名而非错误,则说明配置成功;否则检查服务器错误日志(如Apache的error.log)定位问题。
注意事项:
通过以上步骤,PHP应能正常执行exec命令。如仍失败,建议进一步检查服务器安全策略(如SELinux)或联系主机提供商确认权限限制。