使用UNC路径的PHP shell_exec
在PHP中,当使用unc路径时,我无法通过shell_exec、system或exec执行命令。 以下是一个例子: 工作原理:使用UNC路径的PHP shell_exec,php,system,shell-exec,Php,System,Shell Exec,在PHP中,当使用unc路径时,我无法通过shell_exec、system或exec执行命令。 以下是一个例子: 工作原理: $command = shell_exec("dir c:\\"); echo $command; 这里是不起作用的。没什么 $command = shell_exec("dir \\\\server\\dir"); echo $command; 当我在Windows命令窗口或PowerShell中运行dir\\server\dir时,它会正常执行 UNC路径将起作
$command = shell_exec("dir c:\\"); echo $command;
这里是不起作用的。没什么
$command = shell_exec("dir \\\\server\\dir"); echo $command;
当我在Windows命令窗口或PowerShell中运行dir\\server\dir时,它会正常执行 UNC路径将起作用,但是运行PHP服务的用户必须有权访问共享 我假设您正在使用IIS运行PHP。如果是这种情况,则默认用户为。确保此用户有权访问共享
如果您正在运行Apache,请检查服务器上的任务管理器,以确定哪个用户正在运行Apache服务。授予此用户名访问共享的权限。运行web服务器(例如Apache)的用户帐户是否与您登录的帐户相同?此外,您可能希望尝试
net use
将驱动器号分配给远程目录。即使是为Windows编写代码,也不要在路径中使用反斜杠。PHP将自动转换为适当的分隔符,只需使用正常的正斜杠即可。请改为尝试dir//server/dir
。PHP正在IIS上运行,如何将用户从IUSR_uu更改为其他帐户?关于服务器故障的这个问题可能会帮助您: