亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > .NET > 正文

ASP.NET多頻道網站架構實現方法

2024-07-10 13:12:23
字體:
來源:轉載
供稿:網友

各頻道分別位于不同的web project(具有獨立的二級域名),并將所有的業務邏輯以及數據訪問功能封裝成class library,所有頻道共用這個class library。

下面詳細介紹實現方法。

假設網站有三個頻道,新聞、論壇以及博客,對應的二級域名為"news"、"forum"、"blog"。除此之外,還需要另外定義兩個域名,分別用于網站首頁以及用戶注冊、登陸功能(基于passport機制,本文后面將作詳細介紹),對應域名為"homepage"、"passport"。

1、配置各頻道url

a、配置hosts文件

用文本編輯器打開hosts文件(位于c:/windows或winnt/system32/drivers/etc/),該文件中存放初始的域名解析信息。當我們在瀏覽器中請求某個url時,系統首先在hosts文件中查找相應域名,如果找到則跳轉至指定ip,如果沒找到,則進一步提交dns進行域名解析。

配置很簡單,格式形如"[ip][空格][域名]",每條數據對應一行。下面為配置內容:

192.168.1.2 www.mysite.com

192.168.1.2 passport.mysite.com

192.168.1.3 news.mysite.com

192.168.1.5 forum.mysite.com

192.168.1.9 blog.mysite.com

你可能已經注意到了,各頻道對應于不同的ip,這正是該架構的開發靈活性所在。各頻道(web project)可以創建于不同的開發者電腦。通過將配置內容同步到各臺電腦,可以方便的在各頻道間進行頁面瀏覽,就像這些頻道位于你自己的電腦一樣!采用這種方式可以極大降低開發耦合性,每個頻道都是一個獨立的模塊,一個頻道中的bug不會影響到另一個頻道。

b、配置web.config

考慮到各頻道二級域名有可能進行調整,將相應配置信息存放于web.config文件是一個好辦法。同樣的,該配置信息必須同步到各web project。下面為配置內容:

<add key="sitedomainname" value="mysite.com"/>
<add key="homepagesiteurl" value="http://www.mysite.com/homepage/"/>
<add key="passportsiteurl" value="http://passport.mysite.com/passport/"/>
<add key="newssiteurl" value="http://news.mysite.com/news/"/>
<add key="forumsiteurl" value="http://forum.mysite.com/forum/"/>
<add key="blogsiteurl" value="http://blog.mysite.com/blog/"/>
<add key="localsiteurl" value="/blog/"/>

各配置項說明如下

sitedomainname:站點域名,形如"mysite.com"、"mysite.com.cn"、"mysite.net"等。該配置項的使用方法將在后文介紹。

localsiteurl:當前頻道根路徑,也就是web project所在網站或虛擬目錄的路徑,以"/"開頭。該配置項主要用于頻道內部的引用,比如圖片引用、頁面鏈接等。

其余配置項:用于頻道間的引用,比如頻道導航、功能調用等。

2、創建model部件

在mvc模式組成中,model部件包括所有的業務邏輯操作,其中也包含數據訪問操作。

本方案將model部件拆分成對象實體、對象操作以及數據訪問三部分,封裝成三個class library。

由于class library設計本身就是一個很大的話題,本文就不再祥述了,有興趣的話可以參考一些相關資料。

經驗分享:

上述的model部件拆分方式適用于業務功能比較復雜的大型項目,要求團隊內部有著明確、細化的分工合作。但如?????? ?o??果面對的是中小型項目,該方式很有可能成為開發效率的瓶頸。這主要是由項目特點決定的,中小型項目業務功能相比大型項目沒有那么復雜,開發人員數量也比較有限,往往一個人要負責整個模塊的開發。在這種情況下,架構層次過于繁多,每次修改一個層時,其他相關層也得跟著同步修改,這樣反而影響了開發效率。

3、實現passport機制

很多網站都采用session來存放個人信息,比如登錄信息,并以次作為用戶登錄與否的判斷依據。但session有一個缺陷,就是無法在多個web應用中共享,一個web應用生成的session只能由他自己使用。哪種方法可以在多個web應用中實現數據共享呢?答案是cookie。cookie將信息存放于客戶端, 并在需要時發送回服務器端。

passport,即通行證,是目前普遍采用的一種用戶身份認證機制,簡單來說就是一次登錄,全站通行。這也正是我們的要求。

這里討論的通行證機制基于cookie,實現也比較方便。其中的關鍵點是cookie的domain屬性設置,domain屬性表示cookie信息回發的目標域,也就是接收cookie的域,接收cookie的域必須與發送cookie的域一致,否則無效。比如:發送域為"blog.mysite.com",則接收域可以設為"blog.mysite.com"或"mysite.com",而"news.mysite.com"和"blog.yoursite.com"為無效接收域。要想讓所有頻道都能接收到cookie,必須將domain屬性設置為不帶二級域名前綴的形式,如"mysite.com"、"mysite.com.cn"、"mysite.net"等。

登錄成功后向客戶端發送相應cookie,其中可以包括一些全局信息,比如用戶編號、用戶名等。用戶退出時刪除相應cookie,特別要注意的是,刪除cookie時也要設置正確的domain屬性。

關于該passport機制,還有兩個問題值得討論:

a、cookie的過期時間

有兩種方案可以采用,一種是默認方式,即不設置cookie的expires屬性,采用這種方案時,cookie存放于內存中,在瀏覽器關閉前cookie將一直存在,也就是一直處于登錄狀態。這種方式主要用于對信息安全要求不是很高的網站,比如娛樂休閑類網站;另一種是指定明確的過期時間,一般情況下會將用戶最后一次訪問網站的時間加上一個超時時間段作為過期時間,有點類似于asp中的session超時機制,這種方式主要用于對安全性要求比較高的網站,比如網上銀行、電子郵箱等。

b、cookie的信息安全

由于cookie是以明文方式傳遞數據,不可避免的存在安全隱患,因此對重要數據的加密是非常有必要的。加密可以采用可逆算法,比如des。

4、創建web project

前文已提過,web project的創建比較靈活,既可以創建于不同的開發者電腦,也可以創建于同一臺電腦。這主要取決于開發團隊規模。

5、部署

分別部署各頻道,設置二級域名,將web.config中的相關配置改為生產環境的實際數據。

其中比較繁復的工作就是各頻道中相同部分的部署,比如說網站頭部(logo、導航欄等),網站底部(版權聲明、聯系方式等),圖片,css,javascript等。當然也可以把這些公用資源單獨部署于一個頻道中,以供其他頻道調用,但這樣做就破壞了各頻道松耦合的特性,如果用于存放公用資源的頻道出了問題,那其余頻道也將無法正常使用。

結束

本文討論了asp.net中多頻道網站架構的一種實現方法,由于涉及到的內容較多,無法一一展開,但對其中的重點部分還是多加了點筆墨,希望對你有用。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲国产精品推荐| 欧美美女15p| 91麻豆国产精品| 热99精品只有里视频精品| 国产精品免费视频xxxx| 国产精品男人的天堂| …久久精品99久久香蕉国产| 国产精品欧美日韩一区二区| 91久久夜色精品国产网站| 中文.日本.精品| 欧美自拍视频在线观看| 欧美一级视频一区二区| 久久精品国亚洲| 国产精品久久久久不卡| 久久久99免费视频| 亚洲社区在线观看| 国产精品h在线观看| 日韩成人中文电影| 精品成人国产在线观看男人呻吟| 国产精品久久久久久久久借妻| 日韩大片免费观看视频播放| 最近2019中文字幕第三页视频| 久久久久久久久久久网站| 久久中文字幕在线视频| 国产精品视频白浆免费视频| 伊人久久久久久久久久久| 国产午夜精品一区二区三区| 日产日韩在线亚洲欧美| 欧美最近摘花xxxx摘花| 正在播放国产一区| 日韩欧美一区视频| 亚洲成人av片在线观看| 精品久久中文字幕久久av| 亚洲高清一二三区| 国产一区二区三区欧美| 久久久av网站| 欧美一区二区三区免费视| 日韩电影免费在线观看中文字幕| 亚洲精品国产精品国自产在线| 久久中文字幕一区| 欧美一性一乱一交一视频| 久久久99久久精品女同性| 欧美一区二三区| 亚洲精品久久久久| 日韩国产高清污视频在线观看| 影音先锋日韩有码| 亚洲精品综合精品自拍| 亚洲激情中文字幕| 精品视频www| 91精品久久久久久久久久久久久久| 欧美丝袜第一区| 亚洲视频综合网| 欧美电影院免费观看| 国产精品久久久久久久久影视| 亚洲福利精品在线| 亚洲第一精品福利| 精品视频—区二区三区免费| 亚洲国产精品yw在线观看| 欧美日韩爱爱视频| 国产日韩欧美一二三区| 亚洲精品欧美日韩专区| 亚洲午夜久久久久久久| 日韩有码在线观看| 尤物yw午夜国产精品视频| 91免费看片网站| 伊人伊成久久人综合网小说| 久久精品美女视频网站| 精品女同一区二区三区在线播放| 国产亚洲精品激情久久| 亚洲欧美国产精品专区久久| 91九色国产视频| 亚洲成人亚洲激情| 啪一啪鲁一鲁2019在线视频| 97国产精品视频人人做人人爱| 国内精品400部情侣激情| 色哟哟亚洲精品一区二区| 日韩在线视频观看正片免费网站| 久久人人爽人人爽人人片av高清| 日韩欧美aⅴ综合网站发布| 欧美成人国产va精品日本一级| 在线免费看av不卡| 在线观看视频亚洲| 国产精品久久久久久久久久尿| 亚洲视频综合网| 日韩av一区二区在线| 国产性色av一区二区| 亚洲精品二三区| 91色中文字幕| 久久久国产在线视频| 国产精品福利无圣光在线一区| 色综合久久天天综线观看| 亚洲伊人第一页| 日韩av免费在线播放| 在线日韩av观看| 欧美高清视频一区二区| 国产成人精品视频在线| 在线观看免费高清视频97| 欧美日韩国内自拍| 欧美性猛交xxxx黑人| 国产精品久久久久久久久久ktv| 日韩中文综合网| 久久精品电影网站| 日韩成人在线视频| 久久久久久久久国产| 欧美最顶级的aⅴ艳星| 欧美极品美女电影一区| 中文日韩在线视频| …久久精品99久久香蕉国产| 欧美精品国产精品日韩精品| 91精品视频免费观看| 欧美大片免费观看在线观看网站推荐| 亚洲第一中文字幕在线观看| 日韩日本欧美亚洲| 亚洲综合色激情五月| 国产精品免费视频久久久| 欧美日韩国产精品一区二区三区四区| 欧美激情性做爰免费视频| 国产精品十八以下禁看| 最新日韩中文字幕| 国产福利视频一区二区| 亚洲第一级黄色片| 亚洲一区二区久久久| 久久精品视频在线| 亚洲色图25p| 久久久免费电影| 日韩视频中文字幕| 亚洲第一网站免费视频| www.美女亚洲精品| 亚洲人a成www在线影院| 亚洲国产高潮在线观看| 亚洲成人999| 欧美肥臀大乳一区二区免费视频| 亚洲国产一区二区三区在线观看| 欧美在线国产精品| 一道本无吗dⅴd在线播放一区| 亚洲色图第三页| 欧美日韩午夜视频在线观看| 国产mv免费观看入口亚洲| 日韩av免费一区| 日韩在线欧美在线| 欧美在线观看网站| 国产精品亚洲一区二区三区| 97超碰蝌蚪网人人做人人爽| 欧美激情国内偷拍| 国产精品亚洲美女av网站| 久久精品电影网| 97成人精品视频在线观看| 欧美激情va永久在线播放| 国产欧美精品一区二区三区介绍| 欧美国产精品人人做人人爱| 日韩电影免费观看在线| 日韩不卡在线观看| 亚洲成avwww人| 欧美性xxxxx极品娇小| 国产一区二区三区日韩欧美| 色伦专区97中文字幕| 精品国产91久久久久久老师| 亚洲成avwww人| 大胆欧美人体视频| 亚洲一区二区三区久久| 国内精品模特av私拍在线观看| 欧美日本亚洲视频| 亚洲精品电影网站| 欧美精品情趣视频|