IIS php环境无法执行exec、system解决方案
环境: windows 2008 server R2 IIS
问题: 我们常需要php去执行外部程序,比如python脚本,bat批处理文件,但是新手因为不会配置环境,用了exec、system函数也是不能执行,我刚开始也是遇到这个坑,也看了很多微博,现在总结一下,从一下几个思路中进行解决;
1,首先要确保php的配置文件php.ini文件没有禁用exec、system等功能,如果禁用了要把它去除(打开php.ini文件,把里面的disable_functions = 后面全部删除掉),再查看php.ini文件里面的safe_mode(安全模式)是否等于Off。等于On的话要把他改成Off。改完重启服务器/电脑。
2: 因为iis是网络用户,因此需要设置cmd的用户权限,进入C:\Windows\System32,找到cmd.exe,然后右键->属性->高级->所有者->编辑,选择 所有者更改为下面的“Administrator”,然后一直确认完成。关闭cmd属性窗口,然后再重新找到cmd.exe,然后右键->属性->安全->编辑->添加,然后输入IIS_IUSRS,然后点击检查名称,然后一直确认到完成。最后关闭cmd属性窗口。
3: 打开IIS管理器,进入IIS的应用程序池,把标识改为LocalSystem , IIS默认的是ApplicationPoolIdentity。(具体是选择右边列表,右击点击高级设置,把里面的标识ApplicationPoolIdentity或者其他的,换成LocalSystem就可以了,全部换了)
免费试用尝鲜
贴心会员服务
服务可用性
数据安全保障
全年不间断在线
工作时间:早上9:00-下午6:30
河南快米云网络科技有限公司
公安备案编号:41010302002363
Copyright © 2010-2023 All Rights Reserved. 地址:河南自由贸易区开封片区经济开发区宋城路122号