技術(shù)頻道導航
HTML/CSS
.NET技術(shù)
IIS技術(shù)
PHP技術(shù)
Js/JQuery
Photoshop
Fireworks
服務器技術(shù)
操作系統(tǒng)
網(wǎng)站運營

贊助商

分類目錄

贊助商

最新文章

搜索

win2012(IIS8.5)偽靜態(tài)重寫無后綴URL【親測】

作者:admin    時間:2022-8-29 11:4:59    瀏覽:

關(guān)于win2012(IIS8.5)偽靜態(tài)重寫無后綴URL的問題,困擾了我?guī)滋鞎r間,一直在百度找不到能真正解決問題的方法。最后,還是Google資源更優(yōu)質(zhì),它幫助我解決了這個在我看來就快要放棄的問題。

問題描述

偽靜態(tài)重寫無后綴URL,如:

http://m.gazebo2go.com/123
==>
http://m.gazebo2go.com/list.aspx?id=123

如果我們就上述偽靜態(tài)編寫規(guī)則,那么會提示:404 文件不存在。

網(wǎng)上有人提到添加應用程序映射、模塊等,很多人都轉(zhuǎn)了這篇文章,但是這種方法其實是不對的。

解決方法

必需軟件

  1. IIS7+ 偽靜態(tài)的實現(xiàn)你必須先安裝 URL 重寫模塊 rewrite 2.0
  2. 偽靜態(tài)重寫無后綴URL的實現(xiàn),你需要安裝 Application Request Routing (應用程序請求路由)。

軟件下載及安裝

安裝時注意版本,64位系統(tǒng)選64位的軟件,32位系統(tǒng)選32位的軟件。

 1、安裝rewrite 2.0

安裝rewrite 2.0請參看下文。

2、安裝application request routing:

安裝 application request routing 請按下面IIS官網(wǎng)的網(wǎng)頁的指引操作。

https://www.iis.net/downloads/microsoft/application-request-routing

設置方法

安裝了上面兩個軟件之后,我們就可以在IIS里添加重寫規(guī)則。

在IIS里添加重寫規(guī)則 

很多人更喜歡直接在Web.config添加重寫規(guī)則。

<?xml version="1.0" encoding="UTF-8"?>
<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
  <system.webServer>
      <rewrite>
        <rules>
          <rule name="rule1">
             <match url="^(.*)t/([0-9,a-z]*)" ignoreCase="false" />
             <action type="Rewrite" url="{R:1}/list.asp?id={R:2}" appendQueryString="false" />
          </rule>
        </rules>
      </rewrite>
  </system.webServer>
</configuration>

關(guān)于 IIS7+ 的偽靜態(tài),詳細介紹請看《實例介紹Web.config rewrite規(guī)則設置url重寫功能》。

偽靜態(tài)重寫無后綴URL

要偽靜態(tài)重寫無后綴URL,你必須首先啟動 Application Request Routing (應用程序請求路由)。

啟動 Application Request Routing (應用程序請求路由)

注意,你要從 Internet Information Services (IIS)管理器 打開IIS,才能顯示 Application Request Routing 的圖標。在 計算機管理 里打開IIS,是看不到 Application Request Routing 的圖標的。

這樣,我們就可以編輯Web.config,添加偽靜態(tài)重寫無后綴URL規(guī)則了,如:

<?xml version="1.0" encoding="UTF-8"?>
<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
  <system.webServer>
      <rewrite>
        <rules>
          <rule name="rule1">
             <match url="^(.*)t/([0-9,a-z]*)" ignoreCase="false" />
             <action type="Rewrite" url="{R:1}/list.asp?id={R:2}" appendQueryString="false" />
          </rule>
        </rules>
      </rewrite>
  </system.webServer>
</configuration>

特別要注意的是,<rule>節(jié)點里的name值不能重復,否則網(wǎng)站訪問報錯。更多注意事項請看《實例介紹Web.config rewrite規(guī)則設置url重寫功能》。

總結(jié)

本文介紹了win2012(IIS8.5)偽靜態(tài)重寫無后綴URL的方法,該方法對于 IIS7+ 都有效。

相關(guān)文章

標簽: IIS8.5  IIS  偽靜態(tài)  
x
  • 站長推薦
/* 左側(cè)顯示文章內(nèi)容目錄 */