平台详细信息:IIS7,PHP5,Windows Server 2008 服务器名称:server1
我试图使用php的exec()函数来执行具有以下命令的.bat文件:
winrs -r:server2 "C:\custom_functions.bat"
但是,当我执行该命令时,它不起作用。直接在server2上运行custom_functions.bat文件时,它工作正常,问题可能不是我的代码。我猜它的权限错误。
当我执行exec(" whoami")时,它返回" nt authority \ network service"作为用户。
如果我通过php exec()函数执行任何基本的Windows命令,例如exec(" ipconfig")或exec(" dir c:\"),它们可以正常工作。当我尝试使用WINRM在远程服务器上执行命令时,问题就出现了。我也使用了php的system()函数 - 结果相同。
请帮忙!?
答案 0 :(得分:0)
要在服务器上运行命令,您需要在该服务器上进行授权。从提示中手动运行命令时,您可以通过用户帐户进行访问。
当IIS运行命令时,它作为内置用户运行,无法访问server2。
我不建议让webserver进程访问server2。