在 IIS 中托管可以从任何 Web 客户端访问的网站?

Posted

技术标签:

【中文标题】在 IIS 中托管可以从任何 Web 客户端访问的网站?【英文标题】:Hosting a web site in IIS accessible from any web client? 【发布时间】:2021-10-14 13:59:42 【问题描述】:

尝试在我的本地 Win 10 Pro 机器上使用 IIS 托管一个网站,前提是我将 IP 共享给我的朋友。我的主机文件包含以下内容:

127.0.0.1      site1.com
127.0.0.2      site2.com
127.0.0.3      site3.com
127.0.0.1:1    site4.com 
127.0.0.1:2    site4.com 
123.45.5.6     site5.com  
123.45.5.6:33  site5.com  

除了虚构的外部 ip(仅作为示例)外,它们都按预期工作,添加或不添加端口没有区别。似乎我已经尝试过有意义的方法,比如我的外部是 '1.2" 创建一个主机条目,如 1.2 # 或 1.2:Port #带端口的外部IP

还尝试为防火墙添加排除项,以帮助确保允许流量,具体做法是:

netsh advfirewall firewall add rule name="Open Port" dir=in action=allow protocol=TCP localport=81

有点丢失可能丢失的东西,有什么建议吗?

感谢他的帮助。

【问题讨论】:

【参考方案1】:

首先。 hosts 文件中的 IP 地址后无需添加端口。端口可以​​通过设置绑定在IIS上配置。

第二。如果你想让任何web客户端都可以访问本地WIN10 pro上的站点主机,你需要确保WIN10 pro和web客户端在同一个局域网中。否则需要购买公共域并绑定到WIN10 pro设备。

使用 Ping 命令是测试设备之间流量的好方法。它可以帮助您确定Web客户端是否可以与WIN10 pro建立连接。

【讨论】:

感谢您的评论,我对在同一个 LAN 上的评论感到困惑,如果我想要一个“FriendlyName.Com”,我完全理解需要在全球 DNS 名称服务器中的主机记录,不会t DNS 服务器仅将“FriendlyName.Com”转换为 1.2.3.4,从而解析为我的 IIS/网站.... 123.45.5.6 IP 不是面向外部/网络,site5.com 不是我的 IIS 中的站点名称吗?如果我的 IIS 站点映射正确,我认为我可以托管任意数量的站点...? 我无法清楚地理解你的困惑。但是在同一个局域网中,客户端需要在hosts中添加“服务器IPfriendlyName.com”,服务器也需要在hosts文件中添加“127.0.0.1friendlyName.com”。 感谢您的尝试,我知道我忘记了一些东西,是的,我的前额有点扁平;)我设置了主机文件,设置了 IIS,在我的机器上打开了我的防火墙......啊,愚蠢的我忘记了我的路由器/调制解调器,没有打孔或端口转发 80。所以现在我的 IIS 网站可供网络上的所有人访问......

以上是关于在 IIS 中托管可以从任何 Web 客户端访问的网站?的主要内容,如果未能解决你的问题,请参考以下文章

在 IIS Express 中托管 webapi,因此它只能由父 Web 应用程序访问

我无法从 Windows 托管的 Web API 上的 IIS 访问 wkhtmltopdf

如何使用托管在本地 IIS 上的 Web 应用从 Azure 密钥保管库访问 web.config 中的应用设置和连接字符串等机密

如何从 Azure Web 应用程序与 IIS 中本地托管的 WCF 服务进行通信?

如何使用 HTTP 连接通过托管在 IIS 上的 ASP.NET 成员身份保护 ASP.NET Web API [重复]

用户运行托管 IIS 链接时如何在 asp.net 中获取客户端 IP 地址