日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > 服務器 > 如何實現IIS 7.0對非HTTP協議的支持

如何實現IIS 7.0對非HTTP協議的支持

來源:程序員人生   發布時間:2014-06-04 02:11:40 閱讀次數:2602次

在《再談IIS與ASP.NET管道》介紹各種版本的IIS的設計時,我們談到IIS 7.0因引入WAS提供了對非HTTP協議的支持。這個對于WCF的服務寄宿來說意義重大,它意味著我們通過IIS/WAS寄宿的服務終結點不僅僅可以采用BasicHttpBinding、WSHttpBinding/WS2007HttpBinding等基于HTTP協議的綁定,也可以采用NetTcpBinding、NetNamedPipeBinding和NetMsmqBinding。

在默認的情況下,IIS 7.0針對非HTTP支持的特性是關閉的。為了將一個IIS中的Web應用作為WCF服務的宿主,并采用非HTTP的通信協議,我們不但需要為Web應用所在的站點添加相應的站點綁定(net.tcp、net.pipe和net.msmq等),還需要為Web應用本身進行相應的設置使之允許相應的通信協議。我們可以通過三種方式實現相應的設置。

一、命令行設置

我們可以以命令行的方式執行Appcmd.exe來設置站點綁定和開啟某個Web應用針對某種協議的支持,該命令所在的目錄為%windir%system32inetsrv。如下所示的命令通過Appcmd.exe為默認站點(Default Web Site)添加了基于net.tcp、net.pipe和net.msmq的站點綁定,其中net.tcp綁定采用默認端口808。然后在該站點下創建了一個名稱為WcfServices的Web應用,映射的物理路徑是C:WcfServicesService。最后為創建的Web應用同時開啟了針對http、net.tcp、net.pipe和net.msmq四種協議的支持。

1: REM 為站點” Default Web Site”添加針對net.tcp,net.pipe和net.msmq站點綁定
2: appcmd.exe set site "Default Web Site" –+bindings.[protocol='net.tcp',bindingInformation='808:*']
3: appcmd.exe set site "Default Web Site" –+bindings.[protocol='net.pipe',bindingInformation='*']
4: appcmd.exe set site "Default Web Site" –+bindings.[protocol='net.msmq',bindingInformation='localhost']
5: 
6: REM 創建Web應用WcfServices
7: appcmd add app /site.name:"Default Web Site" /path:/WcfServices /physicalpath:C:WcfServicesService
8: 
9: REM 為WcfServices應用開啟對http、net.tcp、net.pipe和net.msmq的支持
10: appcmd.exe set app "Default Web Site/WcfServices" /enabledProtocols:http,net.pipe,net.tcp,net.msmq

二、配置文件設置

所有方式的設置都體現在對相應配置文件的修改。IIS 7.0中用于控制站點綁定和Web應用針對某個協議的支持的配置文件為applicationHost.config,該配置文件保存的目錄為%windir%system32inetsrvconfig。我們可以直接修改這個配置文件來完成我們需要的設置。

存在于applicationHost.config中的如下這段配置就是上面的命令行執行的結果。三個新增的站點綁定被添加到了表示站點配置節的<bindings>節點中,而表示我們創建的Web應用的<application>節點的enabledProtocols屬性中包含了我們通過命令行設置的四種協議。

1: <configuration>
2: ...
3: <system.applicationHost>
4: ...
5: <sites>
6: ...
7: <site name="Default Web Site" id="1" serverAutoStart="true">
8: ...
9: <application path="/WcfServices" enabledProtocols="http,net.pipe,net.tcp,net.msmq">
10: <virtualDirectory path="/" physicalPath="C:WcfServicesService" />
11: </application>
12: <bindings>
13: <binding protocol="http" bindingInformation="*:80:" />
14: <binding protocol="net.tcp" bindingInformation="808:*" />
15: <binding protocol="net.pipe" bindingInformation="*" />
16: <binding protocol="net.msmq" bindingInformation="localhost" />
17: </bindings>
18: </site>
19: </sites>
20: </system.applicationHost>
21: </configuration>

三、IIS管理器設置

IIS管理器本身提供了可視化的方式是我們很容易地實現對站點綁定的添加、刪除和修改。如圖7-11所示,如果我們在IIS管理器中選擇相應的站點,在右邊“編輯網站”一欄會出現一個“綁定…”按鈕。點擊該按鈕會出現一個“網站綁定”的對話框,當前站點的所有綁定會在這個對話框中列表。我們可以編輯和刪除現有的站點綁定,也可以添加新的站點綁定。IIS管理器只提供了針對站點綁定的設置,為站點中具體某個Web應用開啟或者關閉某種協議的支持還得需要通過上面兩種方式來完成。

clip_image002

為作為WCF服務宿主的Web應用和它所在的站點進行了如上的設置之后,我們就可以直接將基于HTTP的終結點綁定直接替換成基于其他協議類型的綁定。下面配置片斷所示的客戶端終結點采用了NetTcpBinding,而地址代表部署在宿主Web應用的.svc文件地址。

1: <configuration>
2: <system.serviceModel>
3: <client>
4: <endpoint name="calculatorservice"
5: address="net.tcp://localhost/WcfServices/CalculatorService.svc"
6: binding="netTcpBinding"
7: contract="Artech.WcfServices.Service.Interface.ICalculator"/>
8: </client>
9: </system.serviceModel>
10: </configuration>

作者:Artech

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 二区在线播放 | 亚洲一区在线不卡 | 久久久精选 | 国产视频1区 | 99久久免费观看 | 免费午夜av| av九九| 98色花堂最新地址网址 | 一区二区三区黄色 | av在线播放免费 | 成人国产亚洲精品a区天堂华泰 | 精品视频久久久久久 | 日韩一区二区三区视频 | 欧美色欧美亚洲另类七区 | 中文字幕国产区 | 欧美精品一区二区三区在线四季 | 中文字幕在线观看日本 | 99久久婷婷国产综合精品免费 | 麻豆国产原创 | 在线免费小视频 | 亚洲国产日韩欧美 | 99日韩精品 | 国产片一区二区三区 | 日韩精品视频免费观看 | 成人精品视频99在线观看免费 | 在线综合av | 免费人成网ww44kk44 | 亚洲一区欧美 | 色姑娘粽合| 69无线观看免费版 | 在线不卡视频 | 亚洲综合在线播放 | 毛片特黄 | 91国偷自产一区二区使用方法 | 国产亚洲网站 | 97视频免费| 伊人中文 | 污视频在线观看免费 | 高清不卡一区二区三区 | 日韩av电影网站 | 91精品国产日韩91久久久久久 |