2011-02-27 83 views
4

確定。我有一個荒謬的問題。我正在嘗試使用URL重寫從www.domain.com重定向到www.domain.com/default.aspx。如何強制Default.aspx的,而不是www.domain.com

我想設置的Default.aspx作爲默認文檔會自動刪除用戶那裏。但由於某種原因,它仍然出現www.domain.com。

我想它去www.domain.com/default.aspx的原因是,在頁面上登錄控件似乎並不想工作時,它僅僅是www.domain.com。但是,當然,如果我輸入www.domain.com/default.aspx,那麼登錄工作正常。如果是www.domain.com,登錄控件似乎根本不會發布。無論如何,我試圖避免排除故障,爲什麼登錄控制不會觸發,只要有人試圖去www.domain.com就強迫它登陸default.aspx。我正在使用IIS7。這裏的任何想法?

+0

當你進入www.domain.com該文件被加載? – adt 2011-02-27 22:09:16

+0

default.aspx。除了它不顯示在網址中。該網址停留在www.domain.com。 – 2011-02-27 22:13:53

+0

我認爲默認(沒有雙關語意思)是,如果你設置一個默認的起始頁面,IIS會找到它,然後轉到那裏,看起來像這樣的網址www.domain.com \ default.aspx。所以我不確定在IIS7中是否發生了變化,或者我是有史以來最糟糕的asp.net程序員。 :) – 2011-02-27 22:15:12

回答

5

的前面回答必須做在ASP.NET 4回答一個重大更改是表單的動作是空action=""當無擴展名的URL根。但如果在同一頁面上,但在URL有網頁的名稱(blahblah.com/default.aspx)的作用被填充。在簡單的辦法解決我是把Me.Form.Action = "Default.aspx"在首頁的頁面加載。問題修復。

+0

謝謝你,這救了我一噸頭髮拉扯和發誓。我現在需要找點別的方式來處理我今天剩下的事情:) – Jim 2011-07-06 19:18:34

5

您可以添加這樣的事情你的Default.aspx後面的代碼(在Page_Load方法):

if (Request.Url.LocalPath == "/") 
{ 
    Response.Redirect("~/Default.aspx"); 
} 

注意,默認文檔通常設置允許在www.domain.com將要顯示的頁面/ www.domain.com/default.aspx(它不會爲你做任何重定向)。

+0

好的。我現在要試試... – 2011-02-27 22:19:50

+0

當它。這沒有用。好。以下是其他一些信息。我使用web.config中的rewrite強制整個站點使用HTTPS。 – 2011-02-27 22:23:51

+0

<規則名稱= 「HTTP到HTTPS重定向」 stopProcessing = 「真」> <匹配URL = 「(。*)」/> <添加輸入= 「{HTTPS}」 圖案=」關」 IGNORECASE = 「真」/> <動作類型= 「重定向」 redirectType = 「找到」 URL = 「HTTPS:// {HTTP_HOST}/{R 1}」/> 2011-02-27 22:24:40

相關問題