2012-09-25 109 views
3

相對:PHP在WAMP無法訪問映射驅動器

Mapped Network Drives

Service not able to access a mapped drive

PHP is_dir and mkdir not working on mapped network drive

我知道這是很老派,但我無法弄清楚...

在帶有wamp(apache 2.2,PHP 5.3.10)的Windows 2003上作爲服務運行。在上面的鏈接之後,我已經使其運行爲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使用用戶名/密碼來映射。

上述所有練習都在相同的登錄會話中運行。

+0

從相同的登錄環境中運行的兩個命令?Windows不爲不同的用戶保留不同的映射... –

+0

@JeremyJStarcher是的,我在同一個登錄會話上運行它們,另外,我也嘗試過UNC – Passerby

+0

您是否嘗試過通過Apache從PHP運行'net use'? – Robbie

回答

0

嘗試手動安裝Apache,PHP和MySQL。一旦我嘗試使用Curl(以PHP CLI模式)運行代碼,並且花了幾天的時間來調查問題所在,從那一天起,我甚至不會在任何測試環境中安裝預捆綁軟件包,但一旦我對WAMP感到頭疼。

此鏈接會引導你:http://docs.joomla.org/Setting_up_Apache,_PHP_and_MySQL_manually

檢查服務器的防火牆也。

+0

我沒有完全控制服務器,所以這不是一個選擇。無論如何,我(不知何故)通過說服遠程機器的所有者來安裝Apache來解決這個問題。 – Passerby

+0

雖然對我來說不是一種選擇,但我個人認爲這可以解決它,所以我會將此標記爲答案,並希望其他人可能會發現這有幫助。這是我第一次使用WAMP,並且發現它有點令人沮喪,與單獨安裝的PHP相比。 – Passerby

0

設置所有的服務是不必要的。問題是當你使用網絡驅動器時,wamp和apache是​​ ,apache無法啓動,在這種情況下wamp的顏色一般爲黃色,或者apache發出錯誤。確保使用cmd行打開httpd.exe。 你會看到一個錯誤「驅動器找不到,Apache無法啓動等。「 畢竟它可能是你意識到的問題是WAMP的阿帕奇不能作爲服務啓動。本文將幫助你。

Apache Network Drive Alias