问题:127.0.0.1拒绝访问
本来一切好好地,跟着up主一起手写代码到最后一步,运行也没有报错,但是访问不了127.0.0.1,我以为我是自己代码写错了,反复检查发现代码没有错误。
解决方法
一、因为我们windows 的IIS(Internet Information Services)功能没有开启,我开启后,依然无法访问。
步骤:控制面板->程序->启用或关闭windows功能->将IIS的两个功能都点上√,就是所有组件都选上
一般完成后可能要重启电脑。
然后看了上面这篇文章最后提到的另一篇文章:https://www.cnblogs.com/rulasann/p/9442420.html
这里介绍了剩下三种可能的问题,分别是:
二、如果IIS功能没问题,或者重装还不行,就去C:\Windows\System32\drivers\etc查看host是否有下面两行
127.0.0.1 localhost
localhost 127.0.0.1
三、修改IPv6优先级,博主说的是IPv4的优先级低于IPv6,因此造成的拒绝访问。
具体可以见博客:https://blog.csdn.net/ambertian/article/details/70238020
先用netsh interface ipv6 show prefixpolicies,查询IPv6的优先级。
如果IPv6地址(:: / 0)优先于IPv4地址(:: / 96,:: ffff:0:0/96)
现在需要设置使IPv4的优先级高于IPv6的优先级,在命令行中依次设置优先级:
netsh int ipv6 set prefix ::/96 50 0
netsh int ipv6 set prefix ::ffff:0:0/96 40 1
netsh int ipv6 set prefix 2002::/16 35 2
netsh int ipv6 set prefix 2001::/32 30 3
netsh int ipv6 set prefix ::1/128 10 4
netsh int ipv6 set prefix ::/0 5 5
netsh int ipv6 set prefix fc00::/7 3 13
netsh int ipv6 set prefix fec0::/10 1 11
netsh int ipv6 set prefix 3ffe::/16 1 12
再次用netsh interface ipv6 show prefixpolicies查看,各优先级应该如下图所示:
四、修改注册表,三中的那个网址也有介绍
步骤:在cmd(win+R)中输入RegEdit进入注册表编辑器,找到下图中序号1(HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ tcpip6 \ Parameters)的位置点击,看右边2(DisabledComponents DWORD)的值,将其修改为十六进制的20。
127.0.0.1:80无法访问,或者不是自己的服务器界面
如果事情只是127.0.0.1拒绝访问,那我大可不必写这篇博客。当我可以访问127.0.0.1时,且进入后界面为下图所示:
原本自己的服务器应该是在这个界面显示我们设好的文字或者html界面,然而由于IIS默认占用了80端口,于是我们便无法在80端口访问我们的服务器。
解决方法:关闭World Wide Web 发布服务
步骤一:此电脑->管理->服务和应用->服务->World Wide Web 发布服务,然后停止该服务即可
步骤二:运行进入cmd,输入:net stop w3svc,回车搞定。
解决以上两个问题,基本上服务器就可以看到效果啦。如果有博友遇到其他问题可以留言讨论呀,我会在看到的第一空闲时间回复的。