2011-07-07 29 views
1

私は、一度ログインすると別のドメインに移動するWebサイトを持っています。 URLのaspxページを削除してURLを書き換えて、そこからナビゲートするドメイン名を追加する必要がありますまた、httpページからリダイレクトされるhttpsページのURLを書き換えたいと思う。 例:www.xyz.comからwww.abc.comへリダイレクトされました。URLはwww.abc.com/xyzとして表示されます。 誰でも私を助けることができますか?asp.netでのURL書き換え

+0

[asp.netでURL書き換え](http://stackoverflow.com/questions/6620169/url-rewrite-in-asp-net)の可能性が重複 –

答えて

1

これはASP.NET MVCでよく行われ、これはASP.NET Routingと呼ばれます。これはASP.NET WebFormsにも適用可能です。

IIS RewriteというIISモジュールを使用することもできます。これはApacheのmod_rewriteによく似ています。

Hereは、どのように機能するかに関するチュートリアルです。 ASP.NETルーティングに関するMSDNから

:Webフォームアプリケーションで

は、あなたが MapPageRoute(文字列、文字列、文字列)RouteCollectionクラスの メソッドを使用して ルートを作成します。 MapPageRouteメソッドは Routeオブジェクトを作成し、 RouteCollectionオブジェクトに追加します。 MapPageRouteメソッドに渡す パラメータのRouteオブジェクトのプロパティを と指定します。

は通常、あなたは Global.asaxファイル内のApplication_Startイベントのハンドラから呼び出されるメソッド にルートを追加します。このアプローチにより、 は、アプリケーションが起動するときにルートが利用可能であることを確認します。 また、 をユニットテストするときに メソッドを直接呼び出すこともできます。 アプリケーションをユニットテストするときに直接 メソッドを呼び出す場合は、 を登録するメソッドはstatic(Shared in Visual Basic)であり、 RouteCollectionパラメータが必要です。

次の例では、2つのURLパラメータ というアクションとカテゴリ名を定義するルート オブジェクトを追加Global.asaxファイル からコードを示します。指定されたパターンを持つURL は Categories.aspxという物理ページに向けられた です。

これはあなたのGlobal.asaxのです:

protected void Application_Start(object sender, EventArgs e) 
{ 
    RegisterRoutes(RouteTable.Routes); 
} 

public static void RegisterRoutes(RouteCollection routes) 
{ 
    routes.MapPageRoute("", 
     "Category/{action}/{categoryName}", 
     "~/categoriespage.aspx"); 
}