Aspx頁面轉換成html 頁面

有的網站出於各種各樣的原因,在IIS中修改了動態頁面的默認後綴,asp時代就有人在服務器上修改配置,把html後綴的文件當作asp文件來解析:也就是說,asp程序(後綴爲.asp)可以保存爲一個.htm後綴的文件放到服務器上WEB目錄下,而服務器照樣將之當作asp程序來解釋處理,生成結果。這樣對訪問者來說,還以爲網站全是html頁面,而且經常更新呢(感覺沒什麼必要是嗎?錯了,最起碼的一個好處:搜索引擎可是優先收錄html頁面哦,這樣的話站點將很容易被人在搜索引擎中搜索到)
   服務器上修改解析asp文件的後綴很容易,在IIS服務管理器 -> 站點屬性 -> 主目錄 -> 配置 -> 應用程序映射中進行修改即可。如果有配置服務器支持PHP的經驗,那就更清楚怎麼回事了。
  可是對asp.net就不行了,同樣的辦法,修改應用程序映射後,仍然沒有得到預期的結果,文件什麼內容,返回的就是什麼內容,而不是當作asp.net程序來處理了。
   其實主要是還差一點點,那就是沒有在web.config文件或C:/windows/microsoft.net/frameworl/v1.1.4322/config/machine.config(windows2003下的路徑,不同的操作系統路徑稍有不同)中配置特定後綴的文件的HTTP處理程序,配置步驟(假設我們要增加一個映射,將後綴爲.aaa的文件當作.aspx頁面來處理。):
   先在IIS服務管理器中停掉internet信息服務(不停掉沒辦法保存修改的),然後用記事本打開C:/windows/microsoft.net/frameworl/v1.1.4322/config/machine.config,查找"*.aspx",能找到這麼一行:
   本文相關代碼如下:
<add verb="*" path="*.aspx" type="System.Web.UI.PageHandlerFactory"/>
   .aspx文件的解析就是這麼配置的,同樣的道理,我們只要再增加一行,將其中的*.aspx改爲*.aaa就行了:
   本文相關代碼如下:
<add verb="*" path="*.html" type="System.Web.UI.PageHandlerFactory"/>
   保存修改,然後啓動internet信息服務,就可以將任意的aspx文件修改爲後綴爲.aaa的文件了。
   如果不想修改machine.config文件,也可以通過修改網站的web.config文件實現,方法類似,在<configuration><system.web>節點下增加如下配置即可:
   本文相關代碼如下:
<httpHandlers>
  <add verb="*" path="*.html" type="System.Web.UI.PageHandlerFactory"/>
 </httpHandlers>
   (可以不要)最後說一點,如果是IIS6(也就是windows2003自帶的IIS),還得在IIS的站點屬性 -> HTTP頭 -> MIME類型 中增加一個.html的MIME類型,不然遇到.html的請求時將首先被IIS給攔截掉,沒辦法顯示的。

我已測試通過 

發佈了38 篇原創文章 · 獲贊 3 · 訪問量 13萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章