2010-07-17 3 views
3

Как реализовать механизм (в пределах одного приложения ASP.NET MVC), чтобы гарантировать, что:Как обслуживать несколько доменов с помощью одного приложения ASP.NET MVC?

  • если приходит запрос на MYDOMAIN (пользователь посещает mydomain.com) -> ручка с использованием определенного набора контроллеров
  • если запрос приходит на otherdomain (посещения пользователей otherdomain.com) -> обрабатывать с использованием другого набора контроллеров

(домены привязаны к одному веб-хостинга)

Что точек расширения в ASP.NET MV C следует использовать, чтобы гарантировать, что описанный механизм работает?

+0

Если у вас есть 2 разных домена и два набора контроллеров, почему вы хотите поместить все в одно приложение? –

+0

в настоящее время причина в том, что все это размещено на общем хостинге - если бы у меня был собственный выделенный сервер, я бы поставил его в два приложения, конечно :) Другие сайты также должны быть созданы и поддерживаться почти автоматически. – Marek

+0

что вы в конечном итоге делаете? Надеюсь, вам удастся пойти на два приложения. звучит намного дешевле в долгосрочной перспективе! –

ответ

1

Я думаю, вы могли бы реализовать потомок IRouteConstraint, который анализирует текущий HttpContext и соответствует (или не соответствует) маршруту в зависимости от запрашиваемого домена. Затем у вас есть два разных маршрута по умолчанию в вашем файле Global.asax, каждый с разными ограничениями.

Я бы предпочел два приложения, но это ваш выбор, конечно.

+0

Спасибо, я думаю, что это то, что я искал. Я бы предпочел и два приложения, но это не мое решение взять :) – Marek

0

Почему бы не настроить 2 веб-приложения, которые совместно используют общий код в DLL? Каждое веб-приложение будет стандартным приложением MVC.

+0

нет общего кода для обмена данными между приложениями - точка предназначена для обслуживания нескольких приложений в одном контейнере ASP.NET MVC, развернутого на общем веб-хостинге – Marek

Смежные вопросы