修改伺服器配置 讓asp.net檔案字尾名隨心所欲

03ngnntds發表於2019-04-10

asp或php的方法對.net就不行了,同樣的辦法,修改應用程式對映後,仍然沒有得到預期的結果,檔案什麼內容,返回的就是什麼內容,而不是當作asp.net程式來處理了 有的網站出於各種各樣的原因,在IIS中修改了動態頁面的預設字尾,asp時代就有人在伺服器上修改配置,把html字尾的檔案當作asp檔案來解析:也就是說,asp程式(字尾為.asp)可以儲存為一個.htm字尾的檔案放到伺服器上WEB目錄下,而伺服器照樣將之當作asp程式來解釋處理,生成結果。這樣對訪問者來說,還以為網站全是html頁面,而且經常更新呢(感覺沒什麼必要是嗎?錯了,最起碼的一個好處:搜尋引擎可是優先收錄html頁面哦,這樣的話站點將很容易被人在搜尋引擎中搜尋到)

伺服器上修改解析asp檔案的字尾很容易,在IIS服務管理器 -> 站點屬性 -> 主目錄 -> 配置 -> 應用程式對映中進行修改即可。如果有配置伺服器支援PHP的經驗,那就更清楚怎麼回事了。

可是對asp.net就不行了,同樣的辦法,修改應用程式對映後,仍然沒有得到預期的結果,檔案什麼內容,返回的就是什麼內容,而不是當作asp.net程式來處理了。

其實主要是還差一點點,那就是沒有在web.config檔案或C:\windows\ \frameworl\v1.1.4322\config\machine.config(windows2003下的路徑,不同的作業系統路徑稍有不同)中配置特定字尾的檔案的HTTP處理程式,配置步驟(假設我們要增加一個對映,將字尾為.aaa的檔案當作.aspx頁面來處理。):

先在IIS服務管理器中停掉internet資訊服務(不停掉沒辦法儲存修改的),然後用記事本開啟C:\windows\ \frameworl\v1.1.4322\config\machine.config,查詢"*.aspx",能找到這麼一行: 

本文相關程式碼如下:

.aspx檔案的解析就是這麼配置的,同樣的道理,我們只要再增加一行,將其中的*.aspx改為*.aaa就行了:

本文相關程式碼如下:

儲存修改,然後啟動internet資訊服務,就可以將任意的aspx檔案修改為字尾為.aaa的檔案了。

如果不想修改machine.config檔案,也可以透過修改網站的web.config檔案實現,方法類似,在< >節點下增加如下配置即可:

本文相關程式碼如下:


最後說一點,如果是IIS6(也就是windows2003自帶的IIS),還得在IIS的站點屬性 -> HTTP頭 -> MIME型別 中增加一個.aaa的MIME型別,不然遇到.aaa的請求時將首先被IIS給攔截掉,沒辦法顯示的。

文章來源:

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69911024/viewspace-2640882/,如需轉載,請註明出處,否則將追究法律責任。

相關文章