我有一个想要向全世界公开的 Web API 服务。
所以我创建了 no-ip 帐户,下载了它的客户端应用程序,并配置了 no-ip 主机名。
然后,我发布我的 web api 项目并使用 IIS 管理器在我的本地 iis 上创建新网站。
我可以浏览该网站。
我还将我的网站的端口分配给 11992。
问题是:为什么我可以在 上看到这个网站,http://localhost:11992
而在 上却看不到mywebiste.ddns.net:11992
?
为了使其工作,我还应该采取其他步骤吗?
更新:我的 11992 TCP 端口未被 Windows 防火墙阻止。根据我的要求,ISP 为我分配了一个公共 IP,因此它不是静态的。
您的 PC 是否使用应用“NAT 转换”的路由器连接到互联网?
我猜是华为路由器,我使用 NAT - 虚拟服务器选项添加了端口 11992,并使用 canyouseeme.org 报告
成功:我可以在 xx.239.xx.58 端口 (11992) 上看到您的服务,您的 ISP 没有阻止端口 11992 当我访问 mywebsite.ddnes.net 时,我得到了路由器管理员登录信息(比如我访问了 192.168.1.1),但是当我尝试访问 mywebsite.ddnes.net:11992 时,我得到了 404 错误
答案1
看来您正尝试从托管该站点的计算机浏览该站点。当您通过 访问该站点时localhost
,该计算机会将主机名转换为环回地址127.0.0.1
;当您通过 fqdn 访问该站点时mywebiste.ddns.net
,您的计算机会将主机名转换为您的 WAN 地址(假设您没有托管本地 DNS 服务器)。
为了解决这个问题,你可以在机器的主办方文件 (%windir%\system32\drivers\etc)。只需为您的站点添加一个条目:
127.0.0.1 mywebsite.ddns.net
或对于 IPv6:
::1 mywebsite.ddns.net
此外,如果您想从 LAN 上的其他机器浏览该网站,您必须在这些机器上执行同样的事情,用主机的 LAN 地址替换环回地址(例如 192.168.1.xxx)。
192.168.1.xxx mywebsite.ddns.net