日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

IIS虚拟目录实现与文件服务器网络驱动器映射共享

發(fā)布時間:2025/3/15 编程问答 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 IIS虚拟目录实现与文件服务器网络驱动器映射共享 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

這篇文章轉(zhuǎn)載別人,想原創(chuàng)作者致敬!

我本人也遇到同樣的問題,故轉(zhuǎn)載記錄。

本文重點描述如何使用IIS訪問共享資源來架設站點或執(zhí)行 ASP.Net 等腳本。

通常情況下,擁有多臺服務器的朋友在使用IIS建立站點的時候,會遇到如何把多臺服務器的資源合并到一起的問題。如何讓A服務器的站點,訪問B服務器內(nèi)的資源(如:音樂、視頻等)。?
當然,我們可以使用 http 協(xié)議來實現(xiàn)。在B服務器內(nèi)建立一個資源站點,然后A服務器的站點直接通過http方式請求B服務器內(nèi)的資源站點來獲得資源,有時候這樣做不是我們想要的效果。?
設想,能否將B服務器的資源共享到A服務器中來,作為A服務器站點中的一個虛擬目錄呢??
Linux中,我們可以使用 NFS 很方便的達到這個目的,同樣,在IIS中也是同樣可行的,請見下文中的詳細描述。

準備工作?
1.共享資源服務器為 ShareServer,IP地址為:192.168.100.10;?
2.Web服務器為 WebServer,IP地址為:192.168.100.20

詳細步驟:?
一、共享賬戶的建立?
1.在 WebServer 上建立一個用戶名,方便使用該用戶讀取 ShareServer 上的共享目錄,為了web文件能正常運行,同時又避免使用戶擁有過高的權限,我們可以直接把該用戶歸入 Guests(win2003中) 組,或者 IIS_IUSRS(win2008中) 組內(nèi),這樣就一舉多得了。我這里建立的用戶名為 IIS_ShareUser ,密碼為 123456;?
2.在 ShareServer 中也建立一個同名同密碼的用戶(必須一致,否則在UNC驗證的時候會無法登陸)。這里用戶名也應該為 IIS_ShareUser ,密碼為 123456,也歸入Guests組中;

二、共享位置的建立?
1.ShareServer 中使用文件夾共享工具,共享出一個目錄,共享名為 public ,共享權限設置為 Administrators 組 讀取+寫入,IIS_ShareUser 用戶 讀取(如果需要存東西,就加上 寫入 權限);?
這里 Administrators 用戶必須擁有 讀取+寫入 權限,否則在 WebServer 里使用IIS直接設置的時候會提示無法保存設置。?
共享位置的文件夾安全設置也必須加入 IIS_ShareUser 的 讀取運行 權限,另外還需要加入IIS進程用戶的 讀取運行 權限,這里不再描述運行IIS站點所需要的 文件夾安全 權限設置。

三、IIS中引用共享目錄?
1.WebServer 中IIS里建立站點或虛擬目錄,路徑指向 \\192.168.100.10\public ,連接認證用戶手動輸入為 IIS_ShareUser ,密碼 123456。?
當?shù)?步完成的時候,您已經(jīng)通過web方式訪問該站點或虛擬目錄中的來自 ShareServer 共享目錄的資源,但是 ASP.Net 還沒有權限執(zhí)行。?
2.ASP.Net的權限設置?
從站點根目錄下打開 web.config 文件,在 <system.web> 節(jié)點以內(nèi),加入以下內(nèi)容:?
<identity impersonate="true" userName="IIS_ShareUser" password="123456" />?
其實就是修改了 ASP.Net 執(zhí)行的認證方式,把認證方式修改為 ASP.Net模擬用戶 ,這樣就能讓 ASP.Net 通過剛才建立的共享賬號執(zhí)行和訪問 ShareServer 中的資源了。

但是! 這還只是可以訪問資源文件,對于aspx這樣的需要執(zhí)行的文件來說,還會出現(xiàn)應用程序的信任級別問題,說信任已失效之類的錯誤.

MS的網(wǎng)站上給出來解決方法,

http://support.microsoft.com/default.aspx?id=320268

可能對于其他人來說可以執(zhí)行成功, 因為在網(wǎng)上也看到很多人發(fā)了日志出來. 但對于我來說, 怎么也成功不了.

后來找了很多資料, 發(fā)現(xiàn)原來還差一個參數(shù).

c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\caspol.exe -m -ag 1 -url "file:\\ computername \ sharename \ *"FullTrust -exclusive on 以上是MS站上給出的命令, 以下是我的(注意紅色的參數(shù)): c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\caspol.exe -q -m -ag 1 -url "file:\\ computername \ sharename \ *"FullTrust -exclusive on

注意內(nèi)容:要想獲得虛擬目錄的指向路徑在ASP.NET中要使用Server.MapPath()方法.

附注:
1.本文中的ASP.Net權限設置內(nèi)容中,直接把用戶和密碼都寫入 web.config 文件內(nèi),這樣做安全性不是很好,可以使用以下方法提高安全性:
從微軟下載工具 aspnet_setreg.exe (附送下載地址:http://download.microsoft.com/download/2/9/8/29829651-e0f0-412e-92d0-e79da46fd7a5/aspnet_setreg.exe) 下載后請解壓,這是一個壓縮包。
在 WebServer 中使用 aspnet_setreg.exe 執(zhí)行以下指令:
aspnet_setreg.exe -k:SOFTWARE\AspNetIdentityAPP\identity -u:"IIS_ShareUser" -p:"123456"
備注:這里的AspNetIdentityAPP\identity 可以根據(jù)你個人的愛好來設置,只要在讀取的地方對應就行了。
成功執(zhí)行后打開注冊表編輯器,打開目錄 HKLM\SOFTWARE\AspNetIdentityAPP\identity 會看到 userName 和 password 已經(jīng)被系統(tǒng)加密了。
我們需要授予IIS進程用戶權限,以方便IIS用戶讀取這個加密后的配置,右鍵-->權限,加入 NetWork Service組(如果是WIN2003以下版本,IIS進程用戶應為ASPNET) 讀取 權限。
打開站點根目錄下的 web.config ,把 <identity impersonate="true" userName="IIS_ShareUser" password="123456" /> 替換為
<identity impersonate="true" userName="registry:HKLM\SOFTWARE\AspNetIdentityAPP\identity\ASPNET_SETREG,userName" password="registry:HKLM\SOFTWARE\AspNetIdentityAPP\identity\ASPNET_SETREG,password" />
保存退出即可,這樣就完成了整個過程,安全性也得到了提升。

轉(zhuǎn)載于:https://www.cnblogs.com/wanghafan/p/5178979.html

總結(jié)

以上是生活随笔為你收集整理的IIS虚拟目录实现与文件服务器网络驱动器映射共享的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。