如何在asp.net C#应用程序中创建子域?我正在使用asp.net门户网站。
我的网站将所有* .domain.com电话重定向到domain.com。我想要实现的是,首先当用户输入动态子域名时,应将其定向到其主页,就像用户写入www.microsite1.domain.com一样,那么该站点应该指向页面〜/ Microsite / Home.aspx ?value = microsite1,当用户访问www.microsite1.domain.com/about.aspx时,我应该能够得到参数value1 = about。
答案 0 :(得分:4)
第一步是将子域名放在DNS主机服务器中。为此,您需要操作dns文件。例如,如果您使用BIND作为DNS服务器,您可以打开保存DNS配置的文本文件,例如:“c:\ program files \ dns \ var \ mysite.com”并在那里添加一行
subdomain.mysite.com. IN A 111.222.333.444
您还可以更改文件的ID,以便向BIND发送消息以更新子域。
第二步是将新子域重定向到正确的目录。您可以使用rewritepath
在protected void Application_BeginRequest(Object sender, EventArgs e)
Global.asax
上执行此操作
protected void Application_BeginRequest(Object sender, EventArgs e)
{
if (HttpContext.Current.Request.Url.Host.StartsWith("subdomain."))
{
// here you need to find where to redirect him by reading the url
// and find the correct file.
HttpContext.Current.RewritePath("/subdomain/" + Request.Path, false);
}
// .... rest code
}
它不是那么容易,不是那么难......也许还有一些小问题,比如写入dns的权限。您还需要了解dns,阅读手册。