簡體   English   中英

url重寫沒有頁面名稱

[英]url rewriting without page name

我想將這3個路徑路由到默認的基本URL路徑。

www.mysite.com/page1.aspx
www.mysite.com/page2.aspx
www.mysite.com/page3.aspx

我希望在地址欄中顯示這3頁,如下所示:www.mysite.com

我的asp.net項目中只有這3頁。

如何在IIS 6.0的asp.net 3.5 sp1中執行此操作。

 void Application_BeginRequest(object sender, EventArgs e)
 {
            switch (HttpContext.Current.Request.Url.AbsolutePath.ToLower())
            { 
                case "/page1.aspx":
                    HttpContext.Current.RewritePath("~/default.aspx");
                    break;                
                 case "/page2.aspx":
                    HttpContext.Current.RewritePath("~/default.aspx");
                    break;                 
                 case "/page3.aspx":
                    HttpContext.Current.RewritePath("~/default.aspx");
                    break;             
            }
  }

使用此代碼,出現錯誤:

Server Error in '/' Application.
The resource cannot be found.
Description: HTTP 404. The resource you are looking for (or one of its dependencies) could have been removed, had its name changed, or is temporarily unavailable.  Please review the following URL and make sure that it is spelled correctly.

Requested URL: /default.aspx

問題在於重寫網址。 它正在搜索default.aspx文件。 沒有default.aspx文件。 有page1.aspx文件。

為什么要搜索default.aspx? 我只想重寫路徑..

你對HttpContext.Current.RewritePath調用是說“如果有人要求/page1.aspx (或/page2.aspx/page3.aspx ),請改為服務~/default.aspx ”。

當然如果~/default.aspx不存在,這將拋出404。

你想做什么? 您說您“想要將這3條路徑路由到默認的基本URL路徑”但是如果~/default.aspx不存在,該路徑什么?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM