Asp.net "對路徑的訪問被拒絕" 解決辦法(不是文件的一部分)

 

給下面這個目錄加上ASP.NET帳號的權限。
C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/Temporary ASP.NET Files


ASP.NET帳號的權限爲: 讀取和運行,列出文件夾目錄,讀取,寫入。

 

 

前幾天把自己寫的東西移植到另一臺機器上的時候,出了這個問題.很直覺地想到了是權限問題.可是我把WEB目錄下的權限都幾乎改成了完全控制,還是不能解決問題.查了很多資料,講得也不清楚.有說改這個,也有說改那個的.後來,終於注意到,出錯時顯示的是對 ASP.NET Temporary Files文件夾的訪問被拒絕.於是進到這個目錄,並在權限中添加了ASPNET和NETWORK SERVICE兩個用戶,並將權限設爲除可寫,問題解決!

 

 

如果是上傳文件出現的問題,可能是代碼問題,出現原因服務端無法得到客戶端的路徑文件,標準代碼如下:(upload是上傳控件)

        Stream myStream = upload.PostedFile.InputStream;

        int DataLen = upload.PostedFile.ContentLength;

        string Type = upload.PostedFile.ContentType;

        string filename = Path.GetFileName(upload.PostedFile.FileName);

        string filetype = Path.GetExtension(upload.PostedFile.FileName);

        byte[] Data = new byte[DataLen];

        myStream.Read(Data, 0, DataLen);

 

如果用FileStream 用路徑得到流,那麼服務端無法得到客戶端的路徑文件,不是文件的一部分。

 

 

【總結】對路徑"......"的訪問被拒絕--解決辦法

1.可能是安裝出了問題,重新安裝 執行命令,aspnet_regiis -i ,記得要生啓啊
2.提升everyone的權限到可修改
3.提升aspnet權限:控制面板-管理工具-計算機管理-本地用戶和組 找到ASPNET 隸屬於裏面加上Administrators
4.將iis虛擬目錄刪掉後重新建
5.在web.config文件中加入<identity impersonate="true"/>


基本上跑不出這個範圍了。
都試一遍差不多你的問題就會解決掉。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章