0

在 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时,它执行得很好。

4

1 回答 1

1

UNC 路径将起作用,但是运行 PHP 服务的用户必须有权访问共享。

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

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

于 2013-08-23T19:28:08.287 回答