win7 IIS7.5配置伪静态
轉(zhuǎn)自:http://www.cnblogs.com/luckly-hf/archive/2013/03/07/2947687.html
第一部:?
從如下地址中下載URLRewriter組件組件:
官方下載地址:http://download.microsoft.com/download/0/4/6/0463611e-a3f9-490d-a08c-877a83b797cf/MSDNURLRewriting.msi
第二部:在網(wǎng)站項(xiàng)目中添加URLRewriter程序集的引用。
第三部:配置webconfig文件:
注意事項(xiàng):1、參數(shù)用()括起來(lái),使用 $1 來(lái)獲得參數(shù)。2、多個(gè)參數(shù)的時(shí)候使用&分割。
??? 1。在<configuration>與</configuration>節(jié)點(diǎn)中間加入如下配置:
| <configSections> ???????<section name="RewriterConfig"?type="URLRewriter.Config.RewriterConfigSerializerSectionHandler, URLRewriter"?/> ???</configSections> |
??? 2。 在<system.web>與</system.web> 之間加入
| <httpHandlers> ??????????<add verb="*"?path="*.aspx"?type="URLRewriter.RewriterFactoryHandler, URLRewriter"?/> ??????????<add verb="*"?path="*.html"?type="URLRewriter.RewriterFactoryHandler, URLRewriter"?/> ?</httpHandlers> |
??? 或者
| <system.web>????????????????????????? ??<httpModules>?????????????????????????? ???<add type=”URLRewriter.ModuleRewriter, URLRewriter” name=”ModuleRewriter”/>??????????????????????? ??</httpModules>????????????????????????? ?</system.web>??????????????????????????????????????????????????????????????????????????????????? |
3。配置偽靜態(tài)的語(yǔ)法:在<configuration>與</configuration>之間加入<RewriterConfig> </RewriterConfig>節(jié)點(diǎn)。??
??? 在? <RewriterConfig>與</RewriterConfig>之間加入偽靜態(tài)規(guī)則: ???? <Rules> <!–定義偽靜態(tài)第一條規(guī)則開(kāi)始–> <RewriterRule> <LookFor>~/xxxx/view(.[\d]*)\.html</LookFor> <SendTo>~/xxxx/view.aspx?id=$1</SendTo> </RewriterRule> ? <!–定義偽靜態(tài)第一條規(guī)則結(jié)束–> <!–定義偽靜態(tài)第二條規(guī)則開(kāi)始–> <RewriterRule> <LookFor>~/yyyy/(.[\d]*)/view.html</LookFor> <SendTo>~/yyyy/view.aspx?id=$1</SendTo> </RewriterRule>
例子如:
<RewriterConfig><Rules><!--官網(wǎng)--><RewriterRule><LookFor>~/web/new/type-(.[0-9]*)\.html</LookFor><SendTo>~/web/new.aspx?id=$1</SendTo></RewriterRule><RewriterRule><LookFor>/index.html</LookFor><SendTo>/index.aspx</SendTo></RewriterRule><RewriterRule><LookFor>/aboutus/aboutusContent-(.*).html</LookFor><SendTo>/aboutus/aboutusContent.aspx?pageurl=$1</SendTo></RewriterRule><RewriterRule><LookFor>/shop/GiftList-(.*)-(.*).html</LookFor><SendTo>/shop/GiftList.aspx?nav=$1&price=$2</SendTo></RewriterRule><RewriterRule><LookFor>/shop/list-(.*)-(.*)-(.*).html</LookFor><SendTo>/shop/list.aspx?nav=$1&licno=$2&orderby=$3</SendTo></RewriterRule><RewriterRule><LookFor>/shop/list-(.*)-(.*)-(.*)-(.*).html</LookFor><SendTo>/shop/list.aspx?nav=$1&licno=$2&orderby=$3&price=$4</SendTo></RewriterRule></Rules></RewriterConfig>或者
| <RewriterConfig> ??????<rewriter>??????????????????????? <rewrite?? url="^(/.+(\.gif|\.png|\.jpg|\.ico|\.pdf|\.css|\.js)(\?.+)?)$"???to="$1"?processing="stop"?/>??????? <rewrite?? url="~/lmh$"?to="~/Users.aspx?user=lmh"???processing="stop"?/>??????? <rewrite?? url="~/tags/(.+)"?to="~/tag/tagcloud.aspx?tag=$1"??processing="stop"/>??????? <rewrite?? url="^~/mypage(\?.+)?$"?to="~/index.htm$1"???processing="stop"?/>??????? <rewrite?? url="~/article-([^-]+)-([^-]+)-([^-]+).html"????to="~/testurl/article.asp?id=$1&sid=$2&page=$3"??processing="stop"/>????? ??<rewrite?? url="^(.*)/(\?.+)?$"?to="$1/index.htm$2?"?/>??? ????</rewritr> </RewriterConfig> |
url是可以使用正則表達(dá)式的。比如上面的例子:
規(guī)則一:當(dāng)發(fā)現(xiàn)文件類(lèi)型為?? .gif, .png,.jpg, .ico, .pdf, .css or .js時(shí),停止rewrite
規(guī)則二:就是將/lmh重寫(xiě)到/Users.aspx?user=lmh,$在正則表達(dá)式中表示是串的結(jié)束,也就是說(shuō)/lmhe是不會(huì)被重寫(xiě)到to后的地址的,如果把$去掉則可以
規(guī)則三:將tags/xxx重寫(xiě)為tag/tagcloud.aspx?Tag=xxx
規(guī)則四:當(dāng)用戶輸入錯(cuò)誤象mypagexxx形式的地址時(shí),轉(zhuǎn)到網(wǎng)站默認(rèn)頁(yè)面
規(guī)則五:設(shè)置用戶網(wǎng)站的默認(rèn)頁(yè)面為index.htm
新添asp規(guī)則:將article.asp?id=13&sid=10&page=2通過(guò)偽靜態(tài)轉(zhuǎn)換成article-10-13-2.html格式來(lái)訪問(wèn)頁(yè)面
第四部:配置IIS7.5 或IIS7.0
1.新建一個(gè)應(yīng)用程序池:名稱:任意如:aspnet;選擇net?
FrameWork版本(如果你的網(wǎng)站時(shí)候2.0的話就選擇2.0,我的是4.0)在此我選擇Net FramWork v 4.030319.?
托管管道模式先暫時(shí)設(shè)置為集成模式。等下面的設(shè)置完成之后再將托管管道模式設(shè)置為經(jīng)典模式。如果下面的設(shè)置完成之后不把應(yīng)用程序設(shè)置為經(jīng)典模式的話,偽靜態(tài)的功能可以實(shí)現(xiàn),但是頁(yè)面的樣式圖片不能正常顯示這是設(shè)置的關(guān)鍵。
2 新建一個(gè)網(wǎng)站 website ,將此站點(diǎn)的應(yīng)用程序程序池設(shè)置為aspnet。
3 選中你的站點(diǎn)比如website ,并且切換到功能視圖。雙擊【處理程序映射】在打開(kāi)窗口右側(cè)的操作欄目下做如下操作。
?? 3.1,【添加腳本映射】-路徑為:*.html.可執(zhí)行文件為:C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll?
??? 注意:如果你的網(wǎng)站是2.0。可執(zhí)行文件為:C:\Windows\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll 。名稱:任意,比如:html.
?? 3.2, 【添加通配符腳本映射】 請(qǐng)求路徑為*。可執(zhí)行文件為:C:\Windows\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,名稱任意,比如:aspnet.
? ?3.3,【托管處理程序映射】(路徑:* 可執(zhí)行文件:System.Web.UI.PageHandlerFactory 名稱 任意 比如Html-Integrate)
?? 3.4, 雙擊website站點(diǎn)切換到站點(diǎn)功能視圖。然后雙擊模塊,打開(kāi)窗口之后在右側(cè)的操作欄目下面,單擊【添加托管模塊】-》名稱:任意 如aspnet 類(lèi)型:URLRewriter.ModuleRewriter 并且 把【僅針對(duì)向asp.net 應(yīng)用程序 或托管處理程序發(fā)出請(qǐng)求調(diào)用】前面的選項(xiàng) 勾上。(記住一定要勾上)。
?? 3.5 最后一步:雙擊iis7.0或7.5的應(yīng)用程序池。在應(yīng)用程序池列表中找到【aspnet】應(yīng)用程序池。雙擊打開(kāi)之后。將aspnet應(yīng)用程序池的【托管管道模式】設(shè)置為經(jīng)典模式。
?
詳細(xì)解說(shuō):https://www.iis.net/learn/extensions/url-rewrite-module/url-rewrite-module-configuration-reference
轉(zhuǎn)載于:https://www.cnblogs.com/xcsn/p/4678240.html
總結(jié)
以上是生活随笔為你收集整理的win7 IIS7.5配置伪静态的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Android+NDK+OpenGLES
- 下一篇: fc-san