IIS Express 使用详细说明
生活随笔
收集整理的這篇文章主要介紹了
IIS Express 使用详细说明
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
最近在使用XP的IIS發(fā)布Asp.Net MVC3的項(xiàng)目,但是發(fā)現(xiàn)一個(gè)很頭疼的一個(gè)問(wèn)題,在IIS指定虛擬目錄來(lái)發(fā)布網(wǎng)站發(fā)布不了,以前發(fā)布Webfrom項(xiàng)目則不會(huì)有這樣的問(wèn)題,應(yīng)該是跟路由路徑有關(guān)系,導(dǎo)致每次都是從網(wǎng)站根節(jié)點(diǎn)算起,而不是從指定的虛擬目錄算。如果是發(fā)布在默認(rèn)網(wǎng)站下,也就是直接右擊默認(rèn)網(wǎng)站,將主目錄指定到網(wǎng)站路徑,再在配置下添加aspnet_isapi.dll映射,這樣是可以發(fā)布成功的。但是這樣的話,一次就只能發(fā)布一個(gè)站點(diǎn)了。以后項(xiàng)目應(yīng)該都會(huì)使用MVC寫的,每次都更改主目錄太不方便了。后來(lái)朋友那提到了IISExpress,就開始了使用和學(xué)習(xí),發(fā)現(xiàn)這真是個(gè)好東西,有點(diǎn)類似tomcat的感覺(jué),值得Net程序員興奮啊,未來(lái)必將使用廣泛,下面我總結(jié)一些關(guān)于IISExpress的使用。 IIS 7.5 Express官方下載地址: http://www.microsoft.com/zh-cn/download/details.aspx?id=1038 已經(jīng)有IIS 8 Express發(fā)布了,但是不支持XP,所以現(xiàn)在仍然選擇使用IIS 7.5 Express,很多網(wǎng)頁(yè)上都是說(shuō)IIS Express 7.5,我其實(shí)也喜歡這樣叫,感覺(jué)比較順口,但是其實(shí)是不對(duì)的,因?yàn)檫@個(gè)并不是Express的版本號(hào),而是IIS的版本號(hào)。官網(wǎng)上是這樣描述IIS 7.5 Express的,兼具IIS 7.5的強(qiáng)大功能與輕型Web(例如ASP.NET開發(fā)服務(wù)器,也稱為"Cassini")的便利,可以增強(qiáng)在Windows上開發(fā)和測(cè)試Web應(yīng)用程序的能力。(當(dāng)然這個(gè)叫法也不用太在意,但這里提出來(lái),因?yàn)閭€(gè)人一開始是誤解的,知道就行了) 安裝完上面的下載文件后,你可以在C:\Program Files\IIS Express看到安裝文件,主要注意iisexpress.exe,這是IISExpress的啟動(dòng)文件。點(diǎn)擊后會(huì)啟動(dòng)一個(gè)cmd和托盤程序。右擊托盤程序可以看到如下圖,這個(gè)是默認(rèn)的站點(diǎn)地址,點(diǎn)擊就可以打開這個(gè)站點(diǎn)網(wǎng)頁(yè)。遺憾的事,這個(gè)網(wǎng)頁(yè)沒(méi)有像tomcat一樣給我們提供管理站點(diǎn)的功能,而是提供一些鏈接指向 WebMatrix網(wǎng)站,這個(gè)是一個(gè)可以創(chuàng)建網(wǎng)站和用IISExpress發(fā)布站點(diǎn)的工具,但是感覺(jué)對(duì)于專業(yè)開發(fā)來(lái)說(shuō)不實(shí)用,所以個(gè)人并沒(méi)有使用,而是手工改配置文件。 但是這個(gè)站點(diǎn)是在哪里配置的呢,我們可以在“我的文檔”下看到一個(gè)“IISExpress”的文件夾,打開下面的Config\applicationhost.config文件,找到sites節(jié)點(diǎn),就是網(wǎng)站的配置。(默認(rèn)是放在我的文檔下的,這解決了沒(méi)有管理員權(quán)限修改的問(wèn)題) Site詳細(xì)配置 <sites><!-- site 站點(diǎn) 如果啟動(dòng)了右擊托盤IISExpress就能看到,可以在sites下面添加多個(gè)site節(jié)點(diǎn) serverAutoStart=true 是指定站點(diǎn)是否隨服務(wù)器啟動(dòng),但是這個(gè)屬性我并沒(méi)有看到作用,不管是否設(shè)置都是啟動(dòng)第一個(gè)站點(diǎn) --><site name="WebSite1" id="1" serverAutoStart="true" ><!-- application應(yīng)用程序 和在iis中添加的應(yīng)用程序一樣的--><application path="/"><!-- virtualDirectory虛擬目錄 %IIS_SITES_HOME%是C:\Program Files\IIS Express\ --><virtualDirectory path="/" physicalPath="%IIS_SITES_HOME%\WebSite1" /></application><!-- 可以添加多個(gè)path不重復(fù)的application 下面applicationDefaults會(huì)默認(rèn)應(yīng)用程序池,但是也可以指定應(yīng)用程序池--><!-- 這里有個(gè)問(wèn)題如果applicationPool是Clr2IntegratedAppPool 但sites的applicationDefaults是Clr4IntegratedAppPool,則這個(gè)虛擬目錄就不能被啟動(dòng)訪問(wèn)目前我只能通過(guò)將applicationDefaults設(shè)置為Clr2IntegratedAppPool才可以啟動(dòng),并不清楚怎么給不同網(wǎng)站 指定不一樣的程序池并啟動(dòng)--><application path="/test" applicationPool="Clr2IntegratedAppPool"><!-- 可以添加多個(gè)虛擬目錄 和iis中添加虛擬目錄一樣--><virtualDirectory path="/" physicalPath="%IIS_SITES_HOME%\WebSite1" /><virtualDirectory path="/testvir" physicalPath="%IIS_SITES_HOME%\WebSite1" /></application><bindings><!-- binding站點(diǎn)綁定信息 protocol有http和https兩種 bindingInformation指定綁定具體信息 :8080:localhost=>:端口:主機(jī)名" --><binding protocol="http" bindingInformation=":8080:localhost" /><!-- 同一個(gè)網(wǎng)站綁定多個(gè)端口 --><binding protocol="http" bindingInformation=":8899:localhost" /><!-- 通常在IIS發(fā)布的網(wǎng)站 用localhost 也一定可以用127.0.01訪問(wèn) 但是這里不行,必須手工綁定 --><binding protocol="http" bindingInformation=":8080:127.0.0.1" /><!-- 局域網(wǎng)對(duì)應(yīng)的IP地址也是需要自己綁定的 局域網(wǎng)其他用戶才能通過(guò)ip訪問(wèn)--><binding protocol="http" bindingInformation=":8080:192.168.230.128" /></bindings></site><!-- 可以添加多個(gè)site節(jié)點(diǎn) 但是必須是name和id 都不重復(fù)的--><site name="WebSite2" id="2" serverAutoStart="true" ><application path="/test"><virtualDirectory path="/" physicalPath="%IIS_SITES_HOME%\WebSite1" /></application><bindings><binding protocol="http" bindingInformation=":8080:localhost" /></bindings></site><siteDefaults><!-- %IIS_USER_HOME%是"我的文檔"的路徑 Logs下是訪問(wèn)站點(diǎn)的記錄 --><logFile logFormat="W3C" directory="%IIS_USER_HOME%\Logs" /><traceFailedRequestsLogging directory="%IIS_USER_HOME%\TraceLogFiles" enabled="true" maxLogFileSizeKB="1024" /></siteDefaults><!--applicationDefaults 指定站點(diǎn)的默認(rèn)應(yīng)用程序池 在sites上面有applicationPools節(jié)點(diǎn),可以在那看到有五個(gè)應(yīng)用程序池,分別是.Net2.0/4.0的集成/經(jīng)典模式、以及一個(gè)非托管程序池--><applicationDefaults applicationPool="Clr4IntegratedAppPool" /><virtualDirectoryDefaults allowSubDirConfig="true" /></sites>
可以通過(guò)Cmd來(lái)啟動(dòng)iisexpress,如果有錯(cuò)誤會(huì)有提示。輸入iisexpress.exe -help ,可以看到一些命令幫助
常用的有兩種命令方式啟動(dòng)iisexpress: 1)iisexpress.exe? /site:<站點(diǎn)名>?? /config:<配置文件路徑>?? /systray:<boolean是否啟動(dòng)系統(tǒng)托盤應(yīng)用,默認(rèn)true> 如:C:\Program Files\IIS Express>iisexpress.exe /site:website2 /config:"C:\Documents and Settings\Administrator\My Documents\IISExpress\config\applicationhost.confi g" /systray:true 這些參數(shù)都是可選的,一般是在配置文件中配置過(guò)的站點(diǎn) 2)iisexpress.exe /path:<應(yīng)用程序路徑> /port:<端口號(hào),默認(rèn)8080>?/clr:<CLR版本:v2.0|v4.0>?/systray:<boolean是否啟動(dòng)系統(tǒng)托盤應(yīng)用,默認(rèn)true> 這種方式常用來(lái)臨時(shí)指定一個(gè)網(wǎng)站,而不需要在配置文件中配置 C:\Program Files\IIS Express>iisexpress.exe /path:"C:\Program Files\IIS Express\ WebSite1" /port:8899 /clr:v4.0 /systray:true Vs2010的SP1 可以支持IISExpress? 具體使用請(qǐng)參考:http://www.cnblogs.com/haogj/archive/2011/01/08/1930525.html? PS:現(xiàn)在對(duì)于IISExpress學(xué)習(xí)還不透徹,先這樣,后續(xù)再補(bǔ)充轉(zhuǎn)載于:https://www.cnblogs.com/zswto999/archive/2012/12/31/2841191.html
總結(jié)
以上是生活随笔為你收集整理的IIS Express 使用详细说明的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: tomcat 启用NIO
- 下一篇: 时间管理,从洗碗开始