asp.net global.asax Application_BeginRequest - PullRequest
       15

asp.net global.asax Application_BeginRequest

0 голосов
/ 04 ноября 2010

У меня есть сайт с несколькими доменами, указывающими на него.Я хотел перенаправить все запросы в основной домен, поэтому я создал метод RedirectToRealDomain ("domain.com"), чтобы проверять и перенаправлять все запросы в мой предпочтительный домен

. В данный момент он живет на Session_Start, но япланирую переместить его в событие Application_BeginRequest.

Это хорошая идея?Как я понимаю, Session_Start вызывается только при запуске нового сеанса, но Application_BeginRequest вызывается для всех запросов.Метод RedirectToRealDomain не выполняет поиск в БД или что-либо дорогое, кроме сравнения строк.

Ответы [ 2 ]

1 голос
/ 04 ноября 2010

Да, это будет работать. Я использую событие «BeginRequest» модуля HTTP, чтобы сделать то же самое на моем сайте.

Другим вариантом является создание второго сайта IIS и указание всех других доменов на этом сайте. Затем вы можете использовать консоль управления IIS для перенаправления всех запросов на 1-й сайт.

0 голосов
/ 04 ноября 2010

Это должно быть хорошо, но есть другие не программирующие способы сделать это из IIS, которые, как я полагаю, были бы менее затратными и, возможно, более "правильным" способом сделать это.Ваше понимание того, когда происходят события, является правильным, хотя ваше решение должно работать и не слишком расходовать ресурсы сервера.

См. Здесь, как это сделать в IIS:

http://www.getfoundnow.com/iis_301_redirect.htm

...