代码之家  ›  专栏  ›  技术社区  ›  dclowd9901

php文件复制到另一台服务器;访问另一台服务器上的文件系统

  •  0
  • dclowd9901  · 技术社区  · 14 年前

    我正在尝试编写一个PHP脚本,将文件从本地计算机复制到服务器:

    $destination_directory='i:\path\to\file\'。美元数;

    如果(!)@opendir($desination_directory))。{ echo“抱歉,找不到目标目录。”; 模具(); }

    我用这个过程检查对目标文件夹的访问,并不断得到错误返回。有人知道我做错了什么吗?其他的东西我都准备好了。我只是不知道如何访问另一台服务器。

    附录: 我在下面接受了一个答案,因为它在技术上是正确的,而且我能够让Apache服务器被IIS服务器接受,但是,对于我试图完成的任务(给任何使用脚本的人自由移动文件到服务器的能力),这是不可行的。我必须在他们的每台计算机上设置特定的功能。最好的解决方法似乎是在服务器上建立您想要复制文件的脚本,然后以更传统的方式将它们从本地驱动器移动到该位置。这意味着一个具有cgi-exec功能的文件服务器,但我们的服务器不具备该功能。

    4 回复  |  直到 14 年前
        1
  •  2
  •   SteelBytes    14 年前

    我猜你在Windows上,并且已经将i:映射到一个共享,如\\server2\files…

    如果是这样,那就是你的问题。这些映射只能用于当前用户(例如,管理帐户),而不能用于PHP可能运行的IUSR帐户(假定为IIS)。解决方案,不要使用映射,而是使用完整的'unc'路径名,即'\server\share\folder\file.ext',还要记住,IUSR帐户需要访问这些共享/文件夹/文件。

        2
  •  0
  •   Nathan Osman    14 年前

    这台服务器可以通过 I:\path\to\file\\ ?

    如果php在打开目录时报告了一个错误,那么您可能需要确保它存在,并且您对它有访问权限。

    另外,两条斜线( \\ )也可能导致问题。试试看。

        3
  •  0
  •   ukko    14 年前
    $destination_directory = 'I:/path/to/file/' . $theme_number;
    
        4
  •  0
  •   Felix    14 年前

    你可能还想看看 FTP functions .