0
在我的ASP .Net應用程序(不是MVC,只是ASP .Net)我有幾個Web表單,並且需要限制用戶直接訪問多個網頁。ASP .Net Web.config
但是在從其他頁面的應用程序鏈接和根據應用程序的功能,應該能夠重定向(Response.Redirect或表單提交在後或獲取方式)到這些頁面,但嚴格地不直接輸入到瀏覽器的URL並訪問它們。
我已經在那些頁面加載事件(在哪些需要限制直接訪問)中嘗試以下,並且工作得很好。
if (Request.UrlReferrer == null)
{
Response.Redirect("~/Index.aspx", true);
}
但我得到的問題是我對ASP.Net相對較新,不知道這是否是最好的方法來做到這一點。
1)。主要是我搜索,但需要知道我是否可以使用web.config文件完成此操作。如果是的話,將不勝感激,如果有人可以解釋如何web.config文件應該做到這一點...
2)。另外我想重定向用戶,如果他在站點託管的域名內輸入錯誤的URL ...爲此,我在web.config中執行了以下操作,但是想知道這是否正確。謝謝...
<customErrors mode="On" defaultRedirect="~/Index.aspx">
<error statusCode="404" redirect="~/Index.aspx" />
</customErrors>
一般你會重定向到一個特定的「頁面未找到」或「404錯誤」頁面,而不是回到索引 - 這很可能會混淆用戶,並被認爲是「黑暗的做法」。見http://www.codinghorror.com/blog/2007/03/creating-user-friendly-404-pages.html。關於重定向問題,這應該有多安全?沒有什麼能夠阻止用戶使用JavaScript將他們自己從公共頁面重定向到所謂的「安全」的用戶,如果所有被檢查的內容都是推介的存在。也許你應該考慮令牌? – pwdst