2010-03-10 88 views
4

我一直在尋找解決這個錯誤的技巧(谷歌,stackoverflow.com等),並沒有任何工作。 我需要通過asp.net應用程序動態創建.aspx文件。錯誤問題:「訪問路徑<path>被拒絕。」

我所做的一切,試圖解決這個問題:

1)在文件夾的屬性 - >安全,我已經添加IUSR_TONY也IIS_IUSRS,讓他們完全控制到該文件夾​​。只是爲了檢查這是否有幫助。不,它不會。

2)在IIS管理器中,我試圖改變應用程序的池默認身份(基於that),我檢查了所有選項,但沒有成功

我不知道該怎麼做更多來解決它。有任何想法嗎 ?

+0

您正試圖從代碼創建一個物理.aspx文件,並且您得到的錯誤是「訪問路徑被拒絕」?請澄清。 – WVDominick 2010-03-10 15:03:14

+0

是的,我嘗試從代碼級別創建物理文件。 – Tony 2010-03-10 15:09:55

+0

當你說「動態創建.aspx文件」時,爲什麼你需要動態創建一個? – CResults 2010-03-10 15:10:40

回答

1

請說明您的操作系統和IIS版本。

您需要授予對在IIS中運行應用程序池的帳戶的訪問權限。它通常是NT Authority \ Network Service,因此請嘗試授予對該帳戶的完全控制權。

但是,如果您在您的網站上使用Windows集成安全性(並且具有模擬= true),則必須被授予訪問權限的用戶是請求該頁面的用戶。

最後,我真的想阻止你製作一個可以即時創建aspx文件的博客系統。根本不是這樣做的方式。

+0

「It's根本不是這樣做的方式。「爲什麼不 ?或者可能將整篇文章的文本存儲在數據庫中? – Tony 2010-03-10 16:47:27

+2

@Tony,有這麼多的原因,這是一個壞主意,我已經開始了一個問題來總結主要觀點:http://stackoverflow.com/questions/2419028/top-3-reasons-not-to-develop- a-blog-system-that-generate-aspx-files-on-the-fly – 2010-03-10 18:35:19

2

方向爲IIS 6

您需要使用IIS管理器來改變 '主目錄' 權限。

在網站上打開屬性。選擇「主目錄」選項卡。選中「寫入」複選框以啓用寫入權限。

如果你這樣做,我建議只啓用寫在一個特定的目錄,而不是整個網站。更改單個目錄的權限與上述相同,除了不是選擇整個網站的屬性,而是選擇要創建文件的目錄的屬性。

方向的IIS 7

  1. 打開Internet信息系統(IIS)管理器
  2. 展開要修改(命中名稱旁邊的加號)現場
  3. 右擊目錄,您希望能夠寫入文件並選擇Edit Permissions
  4. 點擊Security標籤
  5. 點擊組和用戶列表中的Edit...
  6. 從「組或用戶名」列表中選擇IIS_IUSRS,並添加確認Allow複選框標記爲Write

我知道這聽起來很像你在你的問題1)所做的,但我猜你可能只是通過Windows資源管理器而不是IIS管理器編輯權限。如果上述步驟仍然不適用於您,請告訴我您看到了哪些錯誤。

我測試了使用example from aspalliance.com將文件寫入磁盤,當我授予IIS_IUSRS對輸出目錄的寫入權限並在我刪除寫入權限時停止工作時,它工作良好。

+0

在IIS7中沒有站點屬性選項。或者,也許我只是沒有看到它 – Tony 2010-03-18 10:27:35

+0

@Tony,對此抱歉。我應該說我正在從IIS 6開始工作。它看起來像'主目錄'選項卡現在位於'授權規則'下的'功能'視圖窗格中。在我有機會使用IIS 7之後,我將在今晚晚些時候以更具體的指令進行更新。 – lostriebo 2010-03-18 17:21:01

+0

事實證明,'授權規則'不是在這個特定實例中需要的。我基於一個聲稱將IIS 6中的配置屏幕映射到IIS 7的網頁發表評論。顯然,這是錯誤的或我誤解了表格。 – lostriebo 2010-03-19 02:39:06