子域名 asp.net 站点中带有 . 的伪子域
我有一个 .net 站点和几个带有指向它的通配符 dns 的域。我使用伪子域系统,使用以下代码从 url 中提取子域名
public static string GetSubdomain()
{
string domain = HttpContext.Current.Request.Url.Host;
if (domain.Substring(0, 4).ToLower() == "www.") // if www exists in the url such as www.subdomain.acme.com
domain = domain.Remove(0, 4);
return domain;
}
代码有一些限制。我不能允许用户创建像 subdomain.subdomain.domain.com 这样的网站,但 subdomain.domain.com 。
由于我使用的顶级域名(例如 site.net、site.mobi、site.co.uk)不同,我找不到一种可靠的方法来使用 .在其中。
有人有我可以使用的片段吗?
I have a .net site and couple of domains with wildcard dns pointing to it. I use pseudo subdomain system where i extract subdomain name from url with below code
public static string GetSubdomain()
{
string domain = HttpContext.Current.Request.Url.Host;
if (domain.Substring(0, 4).ToLower() == "www.") // if www exists in the url such as www.subdomain.acme.com
domain = domain.Remove(0, 4);
return domain;
}
Code has some limitations. I can not allow users to create sites like subdomain.subdomain.domain.com but subdomain.domain.com.
Due to differend tlds i use (such as site.net, site.mobi, site.co.uk) i couldn't find a solid way to have subdomains with . in it.
Anyone have a snippet where i can use?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您可以使用简单的正则表达式提取名称的所有部分
You can extract all parts of the name with a simple regex
我很想变得简单并使用类似的东西:
I'd be tempted to go simple and use something like: