2008-12-16 38 views
0

我有一個網站上的按鈕,創建一個目錄並複製一個文件。我使用Visual Studio 2008,ASP.Net 3.5開發它。我正在運行Vista作爲我的操作系統。該網站使用同一模擬。如何使用Vista和IIS7將文件複製到ASP.Net?

的功能不起作用(「訪問路徑XYZ被拒絕」)時:

  • 我通過IE擊中本地網絡服務器

經營的網站的功能時,工作細[注意:具有管理員權限] Visual Studio中運行:

  • 我打戲在Visual Studio
  • 我說鑑於兄弟從Visual Studio wser
  • 我跑通過IE打本地Web服務器的網站,但具有管理員權限
  • 我的網站部署到另一個網站服務器(也VISTA/IIS7)
  • 我修改火狐接受集成身份驗證啓動IE ,然後通過Firefox瀏覽正常訪問和本地主機

我以前從未見過這種行爲,以前File.Copy輸入命令只關心該文件夾的權限被複制到了有效等...(我有大家有試圖調試這種情況時完全控制)。這個問題似乎有可能是管理員權限?或者正在登錄到正在運行的計算機上?

這裏發生了什麼?爲什麼它在開發環境中工作並部署到另一臺機器上,但在部署到自己的機器上時無法工作?似乎很奇怪,任何幫助將不勝感激。

編輯:我已經將「Everyone」添加到所有相關的目錄並給該用戶完全控制,所以不應該有任何權限問題?

回答

2

好的我已經找到了解決這個問題的方法。我不是100%確定它爲什麼可以工作(特別是因爲它在FireFox中正常工作,如果你不在本地連接,在IE中工作正常),但下面的解決方案似乎是解決方法。

在IE中選擇工具 - > Internet選項 - >安全 - >可信站點 - >站點,並將http://localhost添加爲受信任的站點。這使您可以在本地使用該網站。當連接到本地時,爲什麼你需要在IE中執行此操作,而在連接到另一臺計算機時不是在FireFox或IE中,這是我不知道的。但它似乎是一個可行的解決方法。

0

我的猜測是ASP.Net下運行沒有權限(網絡服務),或用於匿名身份驗證的用戶身份確實有IIS運行模擬的線程許可(IUSR)

+0

我已經將「Everyone」添加到所有相關目錄並給予該用戶完全控制,所以不應該有任何權限問題? – ChrisHDog 2008-12-16 04:53:20

2

更可能的是用戶下不能訪問原始文件或目標。你是否嘗試過直接以該用戶的身份進行復制?當您以管理員身份運行IE或以管理員身份運行VS時,模擬用戶具有管理員的完整權限。

[編輯 - 添加鏈接]

有一個類似的線程的一些信息,使用Sysinternals的想法是好的:

UnauthorizedAccessException with IIS7

+0

我可以複製/刪除/等...與該用戶,沒有問題 – ChrisHDog 2008-12-16 04:59:18

2

你應該嘗試給有權修改過的ASP。網

你可以找到幾篇關於谷歌(ing)它的文章。

+0

你能給更多的細節?有問題的目錄和文件具有「每個人」讀取,寫入,修改權限。我如何「授予通過asp.net進行修改」?我正在運行模擬,所以不應該照顧這一點呢? – ChrisHDog 2008-12-16 05:23:01

相關問題