您好,登錄后才能下訂單哦!
今天就跟大家聊聊有關如何使用ASP.NET訪問共享文件夾,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。
假設找找看的ASP.NET程序在A服務器,索引文件在B服務器的ZzkIndex共享文件夾中,訪問地址是\\192.168.18.18\ZzkIndex\。要實現就是在A服務器的ASP.NET程序中能讀寫共享文件夾\\192.168.18.18\ZzkIndex\中的文件。
具體操作步驟:
(注:A服務器為ASP.NET程序所在服務器,B服務器為共享文件夾所在服務器)
①在兩臺服務器上建立相同用戶名、相同密碼的Windows帳戶(A與B服務器都要建),比如假設這里用戶名是ZzkIndexer,密碼是zzk.cnblogs.com。
②取消兩臺服務器上的ZzkIndexer帳戶的遠程控制(Remote Control)權限(讓這個帳戶擁有盡可能少的權限),如下圖:
③將B服務器上的ZzkIndexer帳戶移出所有用戶組(包含Users),如下圖:
不屬于任何用戶組?是的,不要懷疑,已經過實踐檢驗。
④在B服務器上創建共享文件夾ZzkIndex并給ZzkIndexer帳戶授予寫權限,有兩個權限需要設置,一個是文件系統權限,一個是共享權限。
文件系統權限設置如下圖:
共享權限設置如下:
⑤在A服務器的IIS中創建虛擬目錄指向B服務器的共享文件夾,如下圖:
點擊“確定”后,如果出現訪問拒絕(Access to the path '\\192.168.18.18\ZzkIndex' is denied.)的錯誤,不用管它。
⑥在A服務器的ASP.NET程序的web.config文件中,添加帳戶模擬設置:
<system.web> <identity impersonate="true" userName="ZzkIndexer" password="zzk.cnblogs.com"/> </system.web>
⑦在A服務器上,設置“C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files”的文件系統權限,授予ZzkIndexer帳戶修改權限(注:v4.0.30319為當前.NET Framework版本號)。 否則,運行時會出現錯誤:The current identity (ZzkIndexer) does not have write access to 'C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files'.
⑧萬事具備,只欠測試!用一個簡單的test.aspx頁面測試一下,代碼如下:
<%@ Page Language="C#" AutoEventWireup="true" %> <script runat="server"> protected void Page_Load(object sender, EventArgs e) { System.IO.File.Create(Server.MapPath("/ZzkIndex/cnblogs.txt")); } </script>
訪問test.aspx之后,看B服務器的ZzkIndex共享文件中的內容:
看完上述內容,你們對如何使用ASP.NET訪問共享文件夾有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。