浏览器“千年虫”的成因
如果你曾经听说过“千年虫”这个词,那么说明你已经老了。如果你还没有听说过,那么你即将遇到它带来的一系列问题。
我们在通过浏览器访问网站的时候,浏览器都会将自身的UserAgent信息发送到网站。网站通过UserAgent信息可以了解,用户上网设备的类型以及浏览器的版本号,然后根据所获取到的这些信息来反馈相应的网页内容,比如用手机进行的访问就会反馈适用于手机浏览的页面样式。
由于很多网站在开发时设定了只读取浏览器前两位版本号,而且默认将40以及之前的版本号“封杀”了。但是现在主流的浏览器即将升级到100版本,所以就会出现这些网站将版本号认为是10。这样网站认为用户的浏览器版本太低,而没有适配的网页可以反馈,造成用户无法正常浏览的窘境,最终出现类似于“千年虫”的问题。
谷歌浏览器解决方法
如果用户使用的是谷歌浏览器,首先升级到98及以后的版本。接着在地址栏中输入“chrome://flags”并回车,分别以“Force major version to 100 in User-Agent”和“Force the minor version to 100 in the User-Agent string”为关键词进行搜索,找到后在下拉列表中选择“Enabled”并重新启动浏览器即可(如图1)。这两个选项基本上都是强迫“User-Agent”标识符报告网页浏览器是在v100版本上,这样网站将不得不理解和接受一个三位数的版本,并通过与浏览器正确地反馈来作出回应。
为了确认我们刚刚地设置没有问题,我们可以通过浏览器访问https://is-chrome-100-yet.glitch.me/这个网站。如果网站显示为绿色的YES提示,那么就说明该谷歌浏览器的“千年虫”问题已经得到解决(如图2)。如果显示的是红色的No,那么就说明没有解决,需要重新检测问题的所在。
火狐浏览器解决方法
如果用户使用的是火狐浏览器,首先升级到97及以后的版本。接着在火狐浏览器的地址栏里面,输入命令“about:config”后按下回车键。这时会弹出一个安全方面的提示窗口,勾选上 当我尝试修改底层首选项时警示我“复选框,再点击” 接收风险并继续按钮,就可以进入到火狐浏览器的设置界面里面。
在搜索框里面输入“general.useragent.override”,接着在下拉列表中就会显示出搜索到的结果。现在我们首先在结果中选择“字符串”这一项,然后点击后面的加号按钮,在出现的输入框中输入“Mozilla/5.0 (Windows NT 10.0; rv:100.0) Gecko/20100101 Firefox/100.0”这段信息后,点击后面的对勾按钮进行确认(如图3)。重新启动浏览器后,就可以解决“千年虫”的问题,并正常的进行网友的浏览。
其他浏览器解决方法
由于每个浏览器版本的命名规则不尽相同,而它们很多都使用的是谷歌的 Chromium 内核,比如国外的Edge浏览器、Opera浏览器、Vivaldi浏览器等,以及国内的360浏览器、QQ浏览器、搜狗浏览器等,所以仅仅通过查看版本号是无法进行准确判断的。
因此我们需要在浏览器地址栏输入chrome://version/命令并回车,在网页中查看“用户代理”这个参数。找到其中的Chrome这个关键字后,后面的数字就代表内核的版本数(如图4)。如果版本数接近和大于100,那么就按照第二部分的方法进行修改。如果数值离100较远,则可以暂时忽略这个问题。
,