无法扫描另一台服务器中的目录

时间:2014-04-27 13:56:30

标签: php unc scandir

我从早上开始就遇到了这个问题,我想扫描另一台服务器上的目录 \\\\TARIK3\Paretanires\SGM\recv但我有这个问题:

  

警告:scandir(\ TARIK3 \ Partenaires \ SGM \ recv,\ TARIK3 \ Partenaires \ SGM \ recv):在第7行的C:\ wamp \ www \ TRAITMENT DONEES \ index.php

代码是:

$dir = "\\\\TARIK3\Partenaires\SGM\\recv";
$folder = scandir($dir);    
$Fichier = fopen($folder[2], 'r');

1 个答案:

答案 0 :(得分:0)

Windows中出现问题的原因是什么:

显然问题是apache使用匿名/本地帐户并且需要一个"网络/域帐户"

如何解决:

  1. 打开"开始菜单" - >运行(或WindowKey + R)并键入Services.msc并按 输入
  2. 找到Apache服务。从未使用过WAMP,我不知道它的名字是什么。希望它以#34; Apache"这个词开头。 (或wampapache),因此不应该太难找到。
  3. 右键单击该服务,然后选择“属性”。
  4. 切换到“登录”选项卡。
  5. 选择"此帐户旁边的单选按钮:"并输入要在其下运行Apache的用户帐户的凭据。 如果是网络/域帐户,请使用DOMAIN\user语法(或使用“浏览”按钮搜索帐户)
  6. 选择确定并重新启动Apache服务。
  7. 通过查找" httpd.exe"验证您的更改是否有效。在任务管理器中进行处理,并检查进程正在运行的用户名。
  8. 尝试:

    $dir = '\\\\TARIK3\\Partenaires\\SGM\\recv\\';

    或映射:

    $dir = 'Z:\\Partenaires\\SGM\\recv';

    或:

    $dir = 'Z:\\recv';(取决于您如何映射驱动器)

    将服务帐户添加到本地管理员组

    1. 在“管理工具”中,单击“计算机管理”。
    2. 在控制台树中,展开“本地用户和组”,然后单击“组”。
    3. 右键单击“Administrators”组,然后单击“添加到组”。
    4. 点击添加。
    5. 单击“查找”以显示可以将用户和组添加到组中的域列表。
    6. 在“位置”中,单击包含要添加的用户和计算机的域,然后单击“确定”。
    7. 在“输入要选择的对象名称”中,键入要添加到组中的用户或组的名称,然后单击“确定”。
    8. 如果要验证要添加的用户名或组名,请单击“检查名称”。
    9. 来源:

      http://technet.microsoft.com/en-us/library/cc737693%28v=ws.10%29.aspx

      http://de.php.net/manual/en/function.opendir.php#79685

      http://board.phpbuilder.com/showthread.php?10371870-RESOLVED-Connection-to-a-network-Drive-Using-PHP/page2

      https://stackoverflow.com/a/11186808/1518921