[英]Asp.net URL Rewrite Rule with Regex
我對web.config文件有重寫規則。
<rewrite url="~/Login/(.+)$" to="~/Login.aspx?return=$1"/>
<rewrite url="~/(.+)-xxx-(.+)$" to="~/Post.aspx?ost_name=$1&post_id=$2"/>
登錄后第一個用於重定向URL。 第二個職位。
如果用戶嘗試登錄或在帖子頁面上單擊評論,他們將轉到帶有重定向URL的登錄頁面。
protected void lnkLogin_Click(object sender, EventArgs e)
{
Session["GoBackUrl"] = Request.RawUrl.ToString().Replace("/", "$");
base.Response.Redirect("~/Login/" + Session["GoBackUrl"].ToString());
}
例如
domain.com/Login/$post_name-xxx-post_id
登錄后,他們將返回到帖子頁面。
但是使用此規則,他們不會進入登錄頁面。 網址正在更改為
domain.com/Login/$post_name-xxx-post_id
但用戶停留在同一頁面上。 我該如何解決?
我從Devrim Altinkurt的 (lang:Tr)頁面找到了這個示例,並寫了他。 他幫了我。
解決方案: “處理=“停止”
<rewrite url="~/Login/(.+)$" to="~/Login.aspx?return=$1" "processing="stop/>
<rewrite url="~/(.+)-xxx-(.+)$" to="~/Post.aspx?post_name=$1&post_id=$2"/>
當你不寫的時候。 應用程序會查找所有規則並觸發最后一個匹配項。如果您使用相同的網址,則應使用此網址。 更詳細一點:規則等級很重要。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.