IIS 页面可在 LAN 中远程访问,但不能在服务器本地访问

Posted

技术标签:

【中文标题】IIS 页面可在 LAN 中远程访问,但不能在服务器本地访问【英文标题】:IIS pages accessible remotely in LAN but not locally on server 【发布时间】:2016-10-05 16:52:24 【问题描述】:

我们在 IIS 7.5 上部署了一个 MVC 站点。在一个特定的客户端上,可以从客户端的电脑(在本地 LAN 上)浏览网站,但不能从本地服务器浏览。

我们如何配置服务器以从它自己的 IIS 浏览页面?

我们已经尝试过:

    更改 hosts 文件以包含 127.0.0.1 在 IIS 中使用绑定以包含 localhost 刷新 DNS 跑 nbtstat -R

不确定我们还能尝试什么?

更新:我们已成功安装 Chrome,并意识到问题仅出在 IE 上。至此,问题为我们解决了,但底层设置仍然未知。

【问题讨论】:

我使用的是 Windows Server 2016 TP,所以我从本地 localhost 和 LAN 通过 IP 地址启动我的 Web 应用程序,您使用的是 DNS 服务器吗? 是的。我们已经尝试过使用 DNS 名称、本地主机和 IP 地址 - 它们都失败了。局域网上的用户正在成功使用 DNS 名称。 你必须设置虚拟主机并删除 127.0.0.1 它总是重定向到自己的主机。 感谢 Archill。您可以共享用于设置虚拟主机的任何链接吗?我能找到的只是 Apache 服务器。 我称它们为虚拟主机,你写的 IIS 配置有其他名称,我会在这里搜索并发布链接。 【参考方案1】:

我们如何配置服务器以从它自己的 IIS 浏览页面?

仔细检查端口。也许这是一个简单的错误,您尝试通过http://localhost/ 连接(这意味着默认端口 80),但是在 IIS 上您配置了其他端口?

您是否尝试过不同的端口,例如http://localhost:8080(当然您之前需要在 IIS 上设置此端口)?

更新:我们已成功安装 Chrome,并意识到问题仅出在 IE 上。至此,问题为我们解决了,但底层设置仍然未知。

如果 IE 有问题(Chrome 没有问题),这意味着 IE 的“Internet 选项 -> 安全”配置有问题。

如果此设置过于严格以至于您无法午餐站点。

检查您的“本地互联网”设置,或者您可以检查/设置“自定义级别”下的选项(您会看到可以设置很多限制):

【讨论】:

嗨 - 是的,我们已经尝试过其他端口。我也同意这将是 IE 中的一个安全设置,但是哪一个呢?到目前为止,我们已经玩过了,并设法打破了其他东西。幸运的是有一个重置按钮。 如果我没有看到您的设置,很难说。但请查看上面的图片 - 这就是我的情况......所有区域的默认级别,“本地互联网”的“中低” 还要检查每个区域的“站点”...将“localhost”添加到“本地 Internet”中的“站点”并从所有其他区域中删除(如果有)...尤其是检查您是否没有'限制站点'中的'localhost'。 您还可以在“高级”选项卡上“重置高级设置”或“重置”所有浏览器,,, 其他想法 - 也许您的应用程序中有一些异常/错误导致 IE 出现问题 - 午餐控制台“F12”,刷新页面,并检查那里是否显示任何信息。您还可以在“Internet 选项 -> 高级 -> 浏览”中关闭“显示友好 HTTP 错误消息” - 对我来说,当应用程序出现异常时,这会导致空白页面,关闭此选项有助于我查看错误代码...不要别问为什么,我不知道。【参考方案2】:

更新:我们已成功安装 Chrome,并意识到问题仅出在 IE 上。至此,问题为我们解决了,但底层设置仍然未知。

这意味着互联网选项中的设置有问题。 确保@Lukasz Makowej 提到的安全设置为中低或中高

还要确保在自定义关卡设置中启用活动脚本。 如果禁用此功能,ajax 调用将无法正常工作,并确保启用了 javascript

【讨论】:

【参考方案3】:

我在一些非常旧的 IIS 安装中遇到了这个问题。如果您将 IP 绑定设置为使用 All Unassigned,或者添加 IP 地址为 127.0.0.1 的绑定,它应该可以工作。这样做的原因是 Windows 和 IE 可能会更改主机名的 IP 地址,以匹配机器已分配给本地主机 IP 地址 127.0.0.1 的任何 IP 地址。例如,如果机器已分配 IP 地址 10.11.12.13,并且主机名解析为 10.11.12.13,则 IE 在发送请求时可能使用 127.0.0.1。如果你在服务器上安装了 Fiddler,你可以看到请求。

注意:有时当像这样更改绑定时,您需要完全停止并重新启动 IIS,或者重新启动,以使更改生效。如果更改似乎无法正常工作,则重新启动是最佳选择。

【讨论】:

以上是关于IIS 页面可在 LAN 中远程访问,但不能在服务器本地访问的主要内容,如果未能解决你的问题,请参考以下文章

Win10怎么开启WOL网络唤醒远程开机功能

为啥发布到 IIS 后我的 Blazor 服务器页面为空?

VPS:无法访问此站点

无法使用 c# 以编程方式访问 iis 远程服务器

怎么解决外网不能访问IIS的问题

我在服务器上的iis上的身份验证选项中去掉了匿名访问,启用了集成windows身份验证