2010-03-19 60 views
0

我有一些駐留在網絡共享上的PHP腳本。爲了論證的緣故,我們稱之爲share \\nas\dev。我在\\w2k3dev\上設置了一個網站,它使用\\nas\dev\作爲其主目錄,並設置了「位於另一臺計算機上的A共享」。爲什麼我無法使用IIS中網絡共享上PHP腳本的shell_exec?

我的一些腳本使用shell_exec來執行服務器上的功能並將結果返回給我的腳本。同樣爲了便於討論,讓我們說,我只是得到一個目錄列表,像這樣:

echo shell_exec('dir');

  • 如果我跑在腳本IIS,我沒有得到任何輸出 - 但沒有錯誤日誌無論是。
  • 如果我成立阿帕奇\\w2k3dev\並將其配置爲使用相同的份額,如果我的腳本複製到本地計算機上並運行它通過IIS能正常工作的腳本運行正常

所以這個問題似乎只是當IIS設置爲使用網絡共享與腳本包含shell_exec。我的腳本的每個其他方面工作正常。

在procmon中剖析,我可以看到cmd.exe的運行完全不同,具體取決於它是由IIS還是由Apache運行。我有更多的細節,但爲了簡潔起見,我會暫時忽略它們,除非有人要求更多細節。

非常感謝你看到這個,我在我的智慧結束。

親切的問候

伊恩

回答

1
+0

謝謝你的答案本傑明。我以前曾經看過這些評論 - 但是我又看了一遍,以防我錯過了一些東西,並嘗試了所有這些建議。我會等一會兒,看看是否有其他人回答,如果我沒有得到任何其他答案,我會給你答案 - 你的答案可能無法解決我的特殊問題,但它可能會幫助與我類似的情況下的其他人。 乾杯隊友 Iain –

相關問題