我現在擁有它的方式是,Default.aspx爲空,並有一個代碼在Default.aspx.cs後面,根據請求是否被認證,它們將它們重定向到Login.aspx或Home.aspx。有沒有一種優雅的方式將Default.aspx重定向到Home.aspx或Login.aspx?
Default.aspx就在那裏無所事事。它似乎應該有一個更優雅的方法來實現這一點。
任何想法都會很棒!
我現在擁有它的方式是,Default.aspx爲空,並有一個代碼在Default.aspx.cs後面,根據請求是否被認證,它們將它們重定向到Login.aspx或Home.aspx。有沒有一種優雅的方式將Default.aspx重定向到Home.aspx或Login.aspx?
Default.aspx就在那裏無所事事。它似乎應該有一個更優雅的方法來實現這一點。
任何想法都會很棒!
在我看來,最優雅的做法是使用web.config。你可以在這裏指定的登錄頁面的未經驗證的用戶將被自動重定向到:
<authentication mode="Forms">
<forms loginUrl="~/Login/LogOn.aspx" />
</authentication>
<authorization>
<deny users="?"/>
</authorization>
除此之外,你還可以指定哪些用戶是通過授權標籤授予訪問頁當前文件夾中。
不,IIS需要該佔位符才能知道它在那裏作爲默認文檔。
編輯:雖然從技術上來說可以改變這些,但從長遠來看這並不值得。更好地遵循慣例並將home.aspx移動到default.aspx。
這應該是在IIS級別配置的;這意味着,您可以將Default
的應用登錄頁面配置爲Home.aspx
。如果用戶沒有登錄Home.aspx
應該自動重定向到Login.aspx
見下面的截圖從IIS管理器:
從列表中選擇您的Web應用程序 - >「默認文檔」雙擊。
您是否嘗試將您的Home.aspx重命名爲Default.aspx,並拒絕訪問web.config中的Default.aspx,並讓formsauthentication基礎結構執行重定向? –