为什么我可以浏览到本地主机,而不是我的电脑名称? (IIS7)

我不是很了解IIS,但是我正在尝试做一些我认为很简单的事情。

我所做的只是通过IIS添加绑定到网站。 然后我通过删除绑定来解除我的更改。

在IE浏览器中,如果浏览到http:// localhost:80 ,感谢微软的graphicsdevise师,我带着一大堆欢迎消息和一个大大的“IIS7”迎接一个美丽的图片。

如果我浏览到http:// mycomputername:80 ,我用404来迎接。

如果我浏览本地主机上的任何其他虚拟目录,我会得到404。

任何想法如何解决它?

HTTP / 1.1兼容的Web浏览器发送一个名为“主机”的HTTP头,以及每个请求,通知服务器他们正在请求资源的名称 – 这允许服务器通过相同的IP地址托pipe多个单独的站点。

正因为如此,现代Web服务器具有处理对不同主机的请求的处理能力,就好像它们根据“主机”标头的内容进入一个完全不同的站点。

在您的情况下,计算机的名称已成功parsing到您的本地系统(具体parsing哪个地址取决于您的networkingconfiguration),正如IIS正在生成的404响应中显而易见的,但是IIS不会将请求映射到该站点你期待着。

这个问题是在你的IIS绑定configuration中。 你的问题是三种可能性之一:

  • 所需站点上的绑定未设置为正确的主机名。 它可能被设置为localhost ,而请求是通过mycomputername的头部进入的。
  • 该绑定未设置为正确的IP地址。 它可能被设置为127.0.0.1 ,而名称parsing过程可能将名称parsing为绑定的地址。
  • 即使所需站点的绑定匹配,另一个站点也正在获取请求,因为它具有更适用的绑定。 例如,如果您希望的站点绑定到给定端口上的所有地址,并且另一个站点将同一个端口绑定到更具体的地址,则会取而代之。

您可以通过主机文件或在IISpipe理器中添加主机头来完成此操作。

您只有IIS查看特定的IP地址。 转到IISpipe理器,然后转到网站上的属性。 然后,从网站选项卡转到属性。

添加该主机标头值的标识。

你可以编辑你的c:\windows\system32\drivers\etc\hosts文件

127.0.0.1 mycomputername

并尝试。

你应该添加你的计算机名称在主机文件下

 C:\Windows\System32\drivers\etc 

之后IIS将正确解决它

 # Copyright (c) 1993-2009 Microsoft Corp. # # This is a sample HOSTS file used by Microsoft TCP/IP for Windows. # # This file contains the mappings of IP addresses to host names. Each # entry should be kept on an individual line. The IP address should # be placed in the first column followed by the corresponding host name. # The IP address and the host name should be separated by at least one # space. # # Additionally, comments (such as these) may be inserted on individual # lines or following the machine name denoted by a '#' symbol. # # For example: # # 102.54.94.97 rhino.acme.com # source server # 38.25.63.10 x.acme.com # x client host # localhost name resolution is handled within DNS itself. # 127.0.0.1 computername