首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在开发机器上测试子域?abc.localhost

如何在开发机器上测试子域?abc.localhost
EN

Stack Overflow用户
提问于 2009-05-16 17:36:43
回答 3查看 12K关注 0票数 18

我试图开发一个具有多个子域的asp.net网站。我对一般的网站都是新手,尤其是asp.net。然而,似乎通配符子域是通过dns条目和web服务器配置的组合正确设置的-这在我的开发机器上是不会发生的。因此,我在windows 主机文件中手动插入条目

代码语言:javascript
复制
127.0.0.1  localhost
127.0.0.1  abc.localhost
127.0.0.1  xyz.localhost

但是,当我尝试询问Request.Url属性时,看不到任何子域。例如,如果我在浏览器中点击http://abc.localhost:1660/,就会从Request.Uri.ToString()获得http://localhost:1660/abc就这么消失了?!

我不知道为什么hosts文件是这样工作的,但是有没有其他方法可以让我的子域进入我的本地web应用程序呢?谢谢你们所有人。

请注意,我只使用内置的asp.net开发服务器,而不是完整的iis服务器。(这个周末我无法访问完整的IIS,但我仍然想知道这是否会有帮助。)

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-08-18 00:04:05

您可以使用"Request.Headers"HOST"“获取请求的域名,但子域保持不变。”下面是一个简单的方法,它返回当前请求的子域。这个方法还假设你在域名后面有一个".COM",".NET“等,就像真实的网站一样。因此,您需要更改主机文件,使其包含"localhost.com“、"abc.localhost.com”等。

代码语言:javascript
复制
public string subdomain()
{
    string host = Request.Headers["HOST"];
    if (!string.IsNullOrEmpty(host))
    {
        var parts = host.Split('.');
        if (parts.Length > 2)
        {
            return parts[0];
        }
    }
    return string.Empty;
}

我正在搜索这个东西,这里有一篇文章实际上帮助我弄清楚了这一点:https://web.archive.org/web/20090813174916/http://blogs.securancy.com/post/ASPNET-MVC-Subdomain-Routing.aspx

票数 9
EN

Stack Overflow用户

发布于 2009-05-16 17:55:01

我不知道报头,但我使用的一个鲜为人知的技巧是,所有的127.*地址都是本地主机地址,而不仅仅是127.0.0.1。实际上,您可以运行一个监听127.0.0.1端口80的服务器,并运行另一个监听127.0.0.2端口80的can服务器实例。因此,您可以命名为127.0.0.1本地主机,127.0.0.2可以是abc.localhost (或abc.mydomain.com,这样您就可以在本地etc服务器上测试真实的实时URL),依此类推。

票数 14
EN

Stack Overflow用户

发布于 2009-10-09 09:05:13

我使用的是Windows 7、IIS 7.5、VS 2008、SQL server 2005

我成功地在本地主机buy上模拟了子域,在etc/hosts中放入以下代码行

代码语言:javascript
复制
127.0.0.2   myapp.localhost.com

并且,在IIS中,我设置了一个新网站,对绑定部分进行了以下修改:

代码语言:javascript
复制
Hostname = myapp.localhost.com 
IP address = 127.0.0.2

我还创建了一个新的应用程序池,但这不是必需的。您可能需要更改用于处理请求的身份验证用户。我与默认IIS用户之间存在SQL连接权限错误。

代码语言:javascript
复制
IIS>Application Pools>>Right Click on your pool>Advanced Settings>Identity = LocalSystem
票数 12
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/872868

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档