见招拆招 破解网页不显示

软件先锋 2016-04-14 09:57网络整理点击: 标签:

有时我们浏览一个网站,本来可以正常进行访问,但是刷新以后却无法打开。而让人非常疑惑的是,其他的用户却可以正常访问,并没有出现任何异常情况。造成网页不能正常显示的原因有很多,那么到底是什么原因出现这么奇怪的现象,是自己的“RP”有问题还是网页加载出错呢?今天我们就来通过对网页加载步骤的层层分析,一步一步找出问题所在并加以解决。

DNS解析出现问题

根据yahoo公司的调查显示,用户在上网的过程中有80%的时间是在下载网页,而另外的20%的时间用于域名解析和渲染网页。而通常要想对一个网页进行浏览的话,首先需要对这个链接的地址域名进行解析。可是由于存在各种各样的原因,在域名解析的过程中会出现各种问题,以至于域名解析失败造成无法访问的结果。所以如果遇到这样的情况,需要马上更换一个DNS服务器。

在电脑里安装名为AnalogX FastCache的软件,安装完成以后在系统托盘中找到软件图标,在图标上点击鼠标右键选择 “Cogfig”命令,再在弹出的对话框中对软件参数进行一番设置。选中“Auto start”选项,使得软件可以成功的随机启动运行。接下来分别在“Primary DNS IP”和“Secondary DNS IP”选项中,设置两组不同的DNS服务器IP地址。现在包括阿里巴巴、百度、腾讯等在内都推出了公共域名解析服务,因此这里建议大家选择不同服务商的DNS服务(图1)。最后点击窗口中的OK按钮,软件的设置操作就完成了。

201607wywt1

由于AnalogX FastCache替代了系统的DNS服务,所以就需要对Windows系统的DNS解析进行修改。首先打开系统的控制面板,接着点击“网络和Internet”下面的“查看网络状态和任务”选项。在弹出的操作窗口中点击左侧的“更改适配器设置”命令,然后就会打开系统的“网络连接”窗口,从中选择自己最常用的网络连接方式。接着点击鼠标右键选择“属性”命令,在弹出的窗口列表中选择“Internet 协议版本 4”项。点击下面的“属性”按钮后,在弹出窗口的“首选DNS服务器”选项中,将其设置为127.0.0.1这个IP地址就可以了(图2)。由于设置了两组DNS服务器,软件会根据服务器的Ping值来自动进行选择。所以当一个服务器解析出现问题的时候,软件会自动切换到另外的服务器地址。

201607wywt2

加载网页信息时出错

现在的网站在建站的时候,融合了大量不同的元素,这从另一个侧面证明了,前面我们已经提到的,花费时间最多的是下载过程。而在整个页面的加载过程中,最容易出错的就是Javascript的下载问题。因为当遇到Javascript的时候,网页会自动停止解析操作,等到Javascript下载完成后再运行,这就是所谓的“JS加载阻塞”。所以遇到这样的情况,我们只能暂时阻止Javascript的加载。

由于火狐浏览器在选项窗口没有关于Javascript的配置信息,所以只能在地址栏里面输入命令“about:config”,按下回车键就会弹出一个设置的提示窗口。直接点击“我保证会小心”的按钮后,进入到火狐浏览器的设置界面。在设置界面的搜索框中,输入参数名称“javascript.enabled”后按回车键进行搜索,找到这个参数以后修改后面的参数值为“false”,就可以关闭浏览器的Javascript功能了(图3)。

201607wywt3

但是这样的操作在进行分析的时候未免有些复杂,而且在很多时候脚本对网页的作用还是很大的,所以我们可以通过QuickJava这款扩展来操作。默认状态下QuickJava扩展会对JavaScript、图片、Flash等进行拦截,由此就可以判断出是否是Javascript等内容对网页的影响。如果用户需要某些内容通过的话,点击扩展图标旁边的下拉箭头后在菜单里面进行选择即可(图4)。

201607wywt4

小提示:

在QuickJava扩展图标上点击鼠标右键,可以进入其设置窗口进行更多项目的激活,包括cookies、SilverLight、动画图片、CSS 样式等。这样用户可以更好的对网页下载的信息进行控制(图5)。

201607wywt5

修改本机的MTU内容

如果经过前面的一系列分析操作后,网页还是无法成功的进行加载,那么问题应该就出在MTU上面。MTU是Maximum Transmission Unit的缩写,意思是网络上可以进行传送的最大数据包。通常情况下网络设备的MTU都是1500,如果本机的MTU比网关的MTU大,大的数据包就会被拆开进行传送。这样就会产生很多数据包碎片,不但会增加丢包率而且会降低网络速度。

首先打开命令提示符窗口,输入“ping -f -l 1472 192.168.1.1”命令进行判断(图6)。其中192.168.1.1是网关IP地址,1472是数据包的长度。如果可以ping通说明数据包不需要拆包,否则表示数据包需要拆开来发送。通过修改命令中的数值,从而找到合适的数据包长度。现在打开注册表编辑器,展开到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces这个位置。在Interfaces下有多个子项,每个子项对应一个网卡,从中选择本机用来连接网络的那项。接下来在右侧窗口里面找到“MTU”这个选项,用鼠标双击打开该选项后在弹出的对话框选择基数中的“十进制”,再将我们认为合适的MTU设置到其中就可以了(图7)。

201607wywt6

201607wywt7