URL重寫中,重寫Form的Action屬性。

2021-04-13 06:46:57 字數 1366 閱讀 2917

此文重點在於解決url重寫時,form的action部分出現的問題,如果你講http://aa.com/news.aspx?id=22重寫為http://aa.com/news_22.html,成功重寫後,檢視頁面原始檔,你會發現form部分的action屬性還是/news.aspx?id=22,這樣不僅洩漏了真實位址,而且會發生種種問題,比如頁面提交等等,現在就有了乙個辦法可以完美解決這個問題。(以下內容部分原創,部分**借鑑網路)

1.首先修改web.config,以使程式找到處理page類的模組

. . . . . .

. . . . . .

2.建立處理模組

using system;

using system.data;

using system.io;

using system.configuration;

using system.web;

using system.web.security;

using system.web.ui;

using system.web.ui.webcontrols;

using system.web.ui.webcontrols.webparts;

using system.web.ui.htmlcontrols;

namespace news

#region 讀取內容

protected override void render(htmltextwriter writer)

else

base.render(writer);

}#endregion

}#region 修改form標記內容

#region 讀取

internal class formfixerhtml32textwriter : system.web.ui.html32textwriter

public override void writeattribute(string name, string value, bool encode)

base.writeattribute(name, value, encode);}}

#endregion

#region 修改action屬性

internal class formfixerhtmltextwriter : system.web.ui.htmltextwriter

public override void writeattribute(string name, string value, bool encode)

base.writeattribute(name, value, encode);}}

#endregion

#endregion

}

慎用url重寫

為了使 url位址更加友好 當然可能有別的原因 很多站點使用了 url重寫,如http www.cnblogs.com life,在asp.net中通常要處理這樣的 url重寫,必須在iis中將 對映到aspnet isapi.dll c windows microsoft.net framewor...

url重寫技術

注釋掉 條目,以使用 http 模組執行重寫 注釋掉 條目,以使用 http 處理程式執行重寫。除了指定使用 http 模組還是 http 處理程式執行重寫外,web.config 檔案還包含重寫規則 重寫規則由兩個字串組成 要在被請求的 url 中查詢的模式 要替換此模式的字串 如果找到 在 we...

慎用url重寫

為了使url位址更加友好 當然可能有別的原因 很多站點使用了url重寫,如 http www.cnblogs.com life,在asp.net中通常要處理這樣的url重寫,必須在iis中將 對映到aspnet isapi.dll c windows microsoft.net framework ...