WAMP中的PHP无法访问映射驱动器

时间:2012-09-25 04:41:57

标签: php wamp mapped-drive

相对

Mapped Network Drives

Service not able to access a mapped drive

PHP is_dir and mkdir not working on mapped network drive

我知道这是非常老派,但我无法理解......

在带有wamp的Windows 2003(apache 2.2,PHP 5.3.10)上作为服务运行。根据上述链接,我已将其设为Administrator而不是SYSTEM。但仍然没有运气。

我制作了一个.bat文件以明确说明:

@echo off
whoami
net use
php -r "var_dump(scandir('Z:\\'));"
php -r "var_dump(scandir('\\\\192.168.211.86\\voice'));"
php -r "var_dump(scandir('//192.168.211.86/voice'));"

如果我在cmd中运行它,结果是:

serv2003\administrator
New connections will be remembered.


Status       Local     Remote                    Network
-------------------------------------------------------------------------------
OK           R:        \\192.168.211.86\voice    Microsoft Windows Network
OK           Z:        \\192.168.211.86\voice    Microsoft Windows Network
The command completed successfully.

array(5) {
  [0]=>
  string(1) "."
  [1]=>
  string(2) ".."
  [2]=>
  string(6) "Folder"
}
array(5) {
  [0]=>
  string(1) "."
  [1]=>
  string(2) ".."
  [2]=>
  string(6) "Folder"
}
array(5) {
  [0]=>
  string(1) "."
  [1]=>
  string(2) ".."
  [2]=>
  string(6) "Folder"
}

但如果我在Apache中运行它:

<body><pre>
<?php
echo `C:\path\to\test.bat`;
?>
</pre></body>

输出:

serv2003\administrator
New connections will be remembered.


Status       Local     Remote                    Network
-------------------------------------------------------------------------------
Unavailable  Z:        \\192.168.211.86\voice    Microsoft Windows Network
The command completed successfully.


Warning: scandir(Z:\): failed to open dir: No such file or directory in Command line code on line 1

Warning: scandir(): (errno 2): No such file or directory in Command line code on line 1
bool(false)

Warning: scandir(\\192.168.211.86\voice): failed to open dir: No such file or directory in Command line code on line 1

Warning: scandir(): (errno 2): No such file or directory in Command line code on line 1
bool(false)

Warning: scandir(//192.168.211.86/voice): failed to open dir: No such file or directory in Command line code on line 1

Warning: scandir(): (errno 2): No such file or directory in Command line code on line 1
bool(false)

请注意,是的,Apache模块中缺少R:驱动,但由于我正在访问Z:,我认为这不是问题。

我无法访问远程文件夹,也无法将所有文件复制到本地系统。我只需要能够在PHP中读取它们。我该怎么办?

提前致谢!

修改1

不确定这是否重要,但我通过远程桌面访问此服务器(它在地理上远离我)。

\\192.168.211.86\voice使用用户名/密码进行映射。

以上所有练习都在同一个登录会话中运行。

2 个答案:

答案 0 :(得分:0)

尝试手动安装Apache,PHP和MySQL。当我尝试使用Curl(在PHP CLI模式下)运行代码时,我对WAMP非常头痛,并且花了几天时间来研究问题是什么,从那天起我就不会安装预捆绑包甚至任何测试环境。 / p>

此链接将指导您:http://docs.joomla.org/Setting_up_Apache,_PHP_and_MySQL_manually

也检查服务器防火墙。

答案 1 :(得分:0)

设置所有服务是不必要的。问题在于wamp和apache 当你使用网络驱动器时,apache无法启动,wamp的颜色在这种情况下通常是黄色的,或者apache会出错。要确保用cmd行打开httpd.exe。 你会看到一个错误“驱动器无法找到,apache无法启动等” 毕竟它可能是你意识到问题是wap上的apache无法作为服务启动。本文档将为您提供帮助。

Apache Network Drive Alias