Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用UNC路径的PHP shell_exec_Php_System_Shell Exec - Fatal编程技术网

使用UNC路径的PHP shell_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路径将起作

在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路径将起作用,但是运行PHP服务的用户必须有权访问共享

我假设您正在使用IIS运行PHP。如果是这种情况,则默认用户为。确保此用户有权访问共享


如果您正在运行Apache,请检查服务器上的任务管理器,以确定哪个用户正在运行Apache服务。授予此用户名访问共享的权限。

运行web服务器(例如Apache)的用户帐户是否与您登录的帐户相同?此外,您可能希望尝试
net use
将驱动器号分配给远程目录。即使是为Windows编写代码,也不要在路径中使用反斜杠。PHP将自动转换为适当的分隔符,只需使用正常的正斜杠即可。请改为尝试
dir//server/dir
。PHP正在IIS上运行,如何将用户从IUSR_uu更改为其他帐户?关于服务器故障的这个问题可能会帮助您: