今天在Vista下用IIS7架设了一个以前用过的ASP网站,该ASP网站中用到了获取访问者IP地址的代码,以前运行都很正常,一般本机访问时会显示本机IP地址127.0.0.1,而今天看到的则是::1,很是奇怪。于是我用另外一台电脑来访问这台电脑上的网站,结果能够正常显示IP地址,也就是说只是无法获取本机的IP地址。经常多次折腾,终于找到了问题所在,拿来分享。
其实这个问题与IIS7没有关系,关键是由于Vista系统中安装了IPv6协议造成的,我试着将IPv6协议禁用后再用本机访问网站,发现本机IP地址显示正常了。
关于禁用IPv6协议的方法请参考本站文章:《Vista下禁用IPv6协议的方法》