前言
今天在编写VMware虚拟机使用教程的时候想要截一张系统安装完成之后带上自己网站的图片,但是发现IE浏览器一直无法访问自己的网站。一开始以为是虚拟机网络问题经过自己将网络配置、DNS、hosts、IE设置等各方面一样样的全部检查之后发现跟它们这些设置半毛钱关系都没有。并且我的IE浏览器访问百度以及其他大厂的官网都正常访问后来没办法只能先下载360安全浏览器和搜狗浏览器用来打开网址进行截图。个人是比较有强迫症的,放任不了这种摆在自己电脑上面的毛病,于是经过不懈努力以及百度的各种方法全部试了个遍都没有找到原因所在。以事实证明百度上搜索到的多数站点,基本全是自己没有经过测试就搬运到自己网站里。
后来自己安装了两个不同版本的系统进行不断的测试后来终于找到了问题所在,全过程都记录在下方,将按顺序全部呈现给大家。
排查解决全过程简述
由于下方所描述内容是测试以及解决的全过程描述,字数较多。如果没有耐心的可以直接看文章最下方的总结,寥寥几字简短概括。希望我的解决方法以及排查思路可以帮助到你们!
1、以为是本地默认的DNS服务器没有识别到网站的服务器IP,通过手动设置DNS以及Ping检测发现Ping检测返回值正常,并且确实是我网站的服务器IP地址(结果:无效方法)
2、以为是系统问题无法正常指向到服务器,通过修改本地Hosts将网站域名进行强制指向服务器IP。但依旧无法访问(结果:无效方法)
3、以为是别人网上分享的Win8精简版系统的过度精简导致IE组件损坏或系统损坏,特意下载安装了一个微软官方的原版Win7 64位专业版,结果同样存在该问题(结果:无效方法)
4、以为是IE设置问题,一个个将IE设置里面的安全、受信任站点、兼容性视图、IE保护模式、高级 安全、重置IE设置。全部调整设置了个遍依旧无法正常访问(结果:无效方法)
5、浏览器问题,这个是在测试IE各项设置之前一开始就知道的。毕竟IE浏览器依旧是非常老的浏览器了,现在年轻人用都不带用的,估计只有一些不会玩电脑的老人家或者是有怀旧情怀的人才会继续使用。(结果:有效)
6、证书问题,这个也是在使用了其他浏览器之后显示的证书不安全之后才怀疑的。360安全浏览器和搜狗浏览器都显示证书已过期,但实际上证书已经早在几天前就已经续签完成了,并且重新申请了一个证书还是同样的提示。后来对证书进行验证,同时使用2个版本的系统镜像、2种系统位数的、2个版本的IE浏览器、以及搜狗浏览器进行访问世界资源网的http、https两个域名,最终测试得到结果是。带有http的网址IE浏览器可以正常访问打开,但带有https的却无法正常打开,但是搜狗浏览器的不论是http还是https都是可以正常访问并且显示正常(PS:网址栏的危险和证书不安全提醒请自行忽略)
通过分析测试得到的结果发现,应该是证书不安全导致的。因为我网站的证书使用的是免费证书,说白了就是白嫖党。白嫖的Let's Encrypt家的免费证书,并不是那种各大厂商认证的什么高级安全证书。反正对我来说免费证书就够我用的了。有此得出结论是因为用IE浏览器访问http时可以正常访问,但是无法正常显示,https则是完全无法访问。因为我网站的css样式是https的,但是我的图片是http的,所以网站的图片正常可以显示,但是网站按钮都是错位的。最后我将网站的css、js等样式文件都改为http协议之后在IE里面http的协议就可以正常显示了,https由于买不起那什么几千块钱一年的大厂高级安全认证证书依旧无法显示,反正我是摆烂了。我也懒得并且没钱可以拿去浪费或是浪费时间去淘宝之类的地方买那种几十几百块钱的付费证书测试那些证书是否可以让自己的网站在IE浏览器里面打开https协议的,IE都没什么人用了。直接摆烂(结果:有效)
测试环境说明
系统环境1:Win7 x64 微软原版镜像
系统环境2:Win8 x86 精简版
IE版本1:Internet Explorer 8.0.7600.16385
IE版本2:Internet Explorer 11.0.9600.17207
解决前效果图
Win7 64位微软原版镜像
Win8 32位精简版镜像
总结
百度上搜索靠前首页的基本上都是搬来搬去没有经过测试的无效方法,经过测试本地网络设置、DNS、Hosts、IE设置这些都跟这个问题没有半毛钱关系,想要解决该问题直接更换浏览器,或者将自己的网站所有样式文件如css、js文件全部修改成http协议,这样就可以让你网站的http协议在IE里面可以正常访问显示,如果需要https也正常访问显示,那就花钱买大厂高级安全认证的付费证书自行测试结果。如果是别人的网站但是必须要IE内核,那就去下载360安全浏览器、火狐浏览器、搜狗浏览器这种国内的浏览器,基本都自带一个兼容模式和急速模式,兼容模式一般都是采用的IE内核,急速模式一般都是采用的谷歌内核。只需要调整到兼容模式就能够实现IE内核访问该网站!
解决后效果图
没图没真想,附带两个系统将样式文件修改为http协议之后的最终效果图