平台详细信息: IIS7、PHP5、Windows Server2008服务器名称: 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()函数--结果是一样的。
请帮帮我!?
发布于 2012-09-19 02:25:31
要在服务器上运行命令,您需要在该服务器上进行授权。当您从提示符处手动运行该命令时,您可以通过您的用户帐户进行访问。
当IIS运行该命令时,它以内置用户身份运行,该用户对server2没有访问权限。
我不建议给the服务器进程访问server2的权限。
https://stackoverflow.com/questions/12482700
复制相似问题