[VB][C#] 使用 Url Rewriter 套件隱藏網址參數

摘要:Url Rewriting

首先先去下載 Url Rewriter套件

Open Source URL Rewriter for .NET / IIS / ASP.NET

DownLoad > binaries and source code > urlrewriter.net > UrlRewriter.NET 2.0 RC1 > urlrewriternet20rc1b6.zip

解壓縮之後將 \UrlRewriterV2\bin\Release\Intelligencia.UrlRewriter.dll 加入專案參照

 

Step1.設定IIS


IIS6:

1.網站 > 右鍵(內容) > 主目錄頁 > 設定 > 新增 > 執行文件配置路徑 C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll 並取消“確認該檔案是否存在

IIS7:

1.網站 > 處理常式對應 > 新增萬用字元指令碼對應 > 路徑 C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll 名稱 aspnet_isapi

2.應用程式集區 > 選擇指定的應用程式集 > 基本設定 > 將"Managed 管線模式"改為"傳統"

 

Step2.設定web.config


加入以下設定

<configuration>
  <configSections>
    <section name="rewriter"
             requirePermission="false"
             type="Intelligencia.UrlRewriter.Configuration.RewriterConfigurationSectionHandler, Intelligencia.UrlRewriter"/>
</configSections>

  <system.web>
    <httpModules>
      <add name="UrlRewriter"
           type="Intelligencia.UrlRewriter.RewriterHttpModule, Intelligencia.UrlRewriter"/>
    </httpModules>
  </system.web>

  <rewriter>
    <!-- 需轉換的網址, url: 來源頁  to: 目標頁 -->
    <rewrite url="~/Pages/(\d+)/url.aspx" to="~/Pages/url2.aspx?id=$1"/>
  </rewriter>
</configuration>

 


Step3.撰寫程式碼


(來源頁)

url.aspx

<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" Text="Button" />

url.aspx.vb


Partial Class Pages_url
    Inherits System.Web.UI.Page

    Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim url As String = String.Format("~/pages/{0}/url.aspx", TextBox1.Text)
        Response.Redirect(url)
    End Sub

End Class

(目標頁)

url2.aspx.vb


Partial Class Pages_url2
    Inherits System.Web.UI.Page

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        If Not String.IsNullOrEmpty(Request.QueryString("id")) Then
            Response.Write(String.Format("收到:{0}", Request.QueryString("id")))
        End If
    End Sub
End Class

 

以上完成。

 

 


以上文章敘述如有錯誤及觀念不正確,請不吝嗇指教
如有侵權內容也請您與我反應~謝謝您 :)