如何像Blogger.com一样动态创建这种类型的子域

时间:2011-07-10 03:06:30

标签: c# asp.net subdomain blogger

前一段时间我问过这个问题而且我被告知必须在DNS等中输入。我不确定是否真的需要这些。我正在寻找的功能类型如下面的屏幕截图所示:

enter image description here

正如您所见,blogger允许用户为其博客选择子域。我们怎样才能做到这一点?我基本上是在asp.net C#中开发的。一旦我拥有顶级域名,我怎样才能允许我的用户选择这样的子域名。目前我正在开发localhost。

提前致谢:)

2 个答案:

答案 0 :(得分:6)

在IIS中使用通配符域,以便将每个请求捕获到顶级域并在。

asp.net 中:创建一个HttpModule ...这将针对每个请求运行,您可以检查域名等,并根据子域提取用户信息。可以在URL Rewriting in ASP.NET via HttpModule找到httpmodule示例。

asp.net mvc 中:创建自定义RouteHandler(基于接口IRouteHandler自定义)。请查看RouteHandler vs ControllerFactory问题以获取示例。

答案 1 :(得分:3)

您需要添加一个将*.example.com映射到您的网络服务器的通配符DNS映射,以及一个通配符主机名映射,告知IIS将所有子域发送到您的ASP.Net网站。

然后,您可以检查服务器端代码中的Request.Hostname并使用相应的内容(或错误消息)