Мне тоже интересно, но я не верю, что вы можете достичь этого с помощью готовой маршрутизации, которая поставляется с ASP.NET MVC.
К счастью, у пользователя есть большая свобода в выборе того, как он хочет справиться с этими вещами, и решение, которое вы, возможно, захотите рассмотреть, можно найти здесь .
Команда ASP.NET MVC, похоже, признала, что по умолчанию это должно быть предварительно запечено в MVC, но я не вижу ничего, что можно было сделать до v2, поскольку это потребует изменений в механизме маршрутизации.
Если это не удастся, вы можете рассмотреть возможность перезаписи URL (очевидно, это гораздо проще, если у вас есть IIS7). Здесь - это сообщение на форуме IIS, обсуждающее это.
Пример переписывания IIS 7 (взято из здесь ):
<rule name="RewriteSubdomain">
<match url="^(.+)">
<conditions>
<add input="{HTTP_HOST}" type="Pattern" pattern="^([^.]+)\.myapp\.com$">
</conditions>
<action type="Rewrite" url="{C:1}/{R:1}" />
</rule>