實戰ASP.NET訪問共用資料夾(含詳細操作步驟)asp.net訪問網路映射盤的問題

來源:互聯網
上載者:User

部落格園找找看(http://zzk.cnblogs.com)的索引檔案佔用空間太大,需要移至另外一台伺服器,所以要解決“在ASP.NET中通過共用資料夾訪問索引檔案”的問題。

假設找找看的ASP.NET程式在A伺服器,索引檔案在B伺服器的ZzkIndex共用資料夾中,訪問地址是\\192.168.18.18\ZzkIndex\。要實現就是在A伺服器的ASP.NET程式中能讀寫共用資料夾\\192.168.18.18\ZzkIndex\中的檔案。

參考園子裡的 asp.net訪問網路映射盤的問題 文章,我們解決了這個問題,在這裡分享一下。

具體操作步驟:
(註:A伺服器為ASP.NET程式所在伺服器,B伺服器為共用資料夾所在伺服器) 

  1. 在兩台伺服器上建立相同使用者名稱、相同密碼的Windows帳戶(A與B伺服器都要建),比如假設這裡使用者名稱是ZzkIndexer,密碼是zzk.cnblogs.com。
  2. 取消兩台伺服器上的ZzkIndexer帳戶的遠端控制(Remote Control)許可權(讓這個帳戶擁有儘可能少的許可權),如:

  3. 將B伺服器上的ZzkIndexer帳戶移出所有使用者組(包含Users),如:

    不屬於任何使用者組?是的,不要懷疑,已經過實踐檢驗。 

  4. 在B伺服器上建立共用資料夾ZzkIndex並給ZzkIndexer帳戶授予寫入權限,有兩個許可權需要設定,一個是檔案系統許可權,一個是共用許可權。
    檔案系統使用權限設定如:

    共用使用權限設定如下:

  5. 在A伺服器的IIS中建立虛擬目錄指向B伺服器的共用資料夾,如:

    點擊“確定”後,如果出現訪問拒絕(Access to the path '\\192.168.18.18\ZzkIndex' is denied.)的錯誤,不用管它。
  6. 在A伺服器的ASP.NET程式的web.config檔案中,添加帳戶類比設定:
    <system.web>
    <identity impersonate="true" userName="ZzkIndexer" password="zzk.cnblogs.com"/>
    </system.web>
  7. 在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'.
  8. 萬事具備,只欠測試!用一個簡單的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共用檔案中的內容:

    搞定!

小結

“解決問題+寫部落格”花費的時間可能是“解決問題+不寫部落格”的兩倍,但寫出來之後,你再也不用擔心再次遇到這個問題,再也不會出現這樣的鬱悶:有人問我一個曾經解決過的問題,我卻忘了當時是怎麼解決的。 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.