2010-04-20 240 views
2

任何人都知道阻止某些用戶(通過IP)訪問您的網站(asp.net mvc上的網站)。如何阻止某些IP(用戶)訪問我的網站?

編輯: 我知道,網絡服務器可以做到這一點爲好,但我需要這個應用程序級別

+3

這最好通過服務器配置而不是編程完成,投票轉移到http://serverfault.com。 – 2010-04-20 12:31:36

+2

是的,它可能在服務器上「最好」完成,但有時候審覈工具無法設置服務器配置,並且您需要應用程序來處理重定向被阻止的用戶。 – 2010-04-20 12:33:43

回答

4

最好在Web服務器上這樣做。

但是,如果您想要在代碼中執行該操作,則可以處理Application.BeginRequest事件,請檢查Request.UserHostAddress,並致電Response.End

+0

請注意IP很容易被欺騙。 – Nix 2010-04-20 12:35:34

+0

@Nix:我不相信,在這種情況下。在ASP.NET應用程序獲取請求之前,必須啓動有效的HTTP會話,並且在此之前必須完成TCP握手。這不會發生欺騙IP。 – VladV 2010-04-20 13:18:03

+0

這是可能的...(http://stackoverflow.com/questions/1835343/from-the-perspective-of-an-asp-net-web-form-can-the-request-userhostaddress-be-t) [欺騙] – Nix 2010-04-20 13:48:17

1

IIS允許您指定的IP黑名單。

1

如果您想在應用程序級別執行此操作,您可以從Request.UserHostAddress獲取用戶IP,然後在IP保存在您已保存的列表中的情況下,將其重定向到希望他們去的任何位置。