浏览器指纹的语言设置
1、网站如何判断应该显示何种语言
以 Google 网站为例,当我们用不同的浏览器访问 Google 网站时,会发觉,Google 网站会根据浏览器的不同,自动显示英文/简体中文或其它语言的版本。那么,Google 网站是如何判断当前应该显示哪种语言的呢?
一般而言,网站会依据于两个信息来判断语言的设置,一个是IP地址,一个是浏览器指纹信息中所包含的“语言”属性。
IP地址很容易理解,举个例子,如果您在访问 Google 网站时用的是美国的IP地址,Google 就默认显示 English 版本;如果使用了香港的IP地址,则默认显示繁体中文版本,这显然是一种非常友好且科学的机制。
而浏览器指纹中的“语言”属性,是指浏览器在访问网站时,会向网站发送一个名为 “accept-language”
的头信息,而这个头信息,是浏览器指纹信息的一部分,如下图所示:
《访问Google网站时的Header信息》
上图中的 accept-language
头信息告诉Google网站:本浏览器只接受一种语言 en-US
(暨美国英语,其优先级为0.9),因此,Google网站默认显示英文版本。
这里需要提醒您的是,一个网站到底根据 IP地址还是根据 accept-language
来判断显示的语言版本,还是说这两个选项都起作用,具体采用哪种规则取决于网站的开发人员。大多数情况下,网站一般会以 accept-language
来判断显示的语文版本。
2、如何设置网站的语言选项
在花漾中,每个浏览器指纹都可以设置其“语言”属性,这是一个动态属性(更详细信息请阅读 浏览器指纹的动态属性),当通过指纹模板创建指纹实例时,可以设置“语言”属性的默认值,目前可以设置多种语言,分别是:跟“随IP”、“English”、“简体中文”、“繁体中文”、“韩语”、“泰语”、“印度尼西亚语”、“菲律宾语”、“越南语”、“日语”等。 其中,跟随IP是指IP所在地理位置的默认语言,如IP地址位于美国,则其值为 en-US(暨美国英语),如果IP地址位于台湾(暨繁体中文),则其值为 zh-TW。
《通过指纹模板创建指纹实例时可以设置“语言”属性的默认值》
当我们用此指纹实例访问Google网站时,会发觉Google网站默认显示为简体中文版本,如果再观察访问请求中发出的 accept-language
头信息,会发觉包含的内容如下:
《访问Google网站时的Header信息》
上述头信息的意思为:本浏览器接受两种语言,分别是 zh-CN(权重为0.9)和 en-US(权重为0.8),由于 zh-CN 的权重较高,故 Google网站默认显示简体中文版本。
3、批量设置指纹实例的语言属性
您也可以在创建指纹实例的时候,指定“语言”属性,这样在批量生成的指纹实例中,可以拥有相同的语言属性设置,如下图所示:
《批量设置指纹实例的语言属性》
4、网站语言与花漾指纹浏览器界面语言的关系
如前文所述,访问网站时,网站默认显示的语言版本只和分身绑定的IP地址以及浏览器指纹信息的“语言”属性相关,和花漾指纹浏览器的界面语言没有任何关系。 换言之,您将花漾指纹浏览器界面语言设置为简体中文,但您可以在访问网站的时候设置指纹实例只允许使用英语或者其它语言。 关于花漾指纹浏览器界面语言相关信息请阅读 客户端与浏览器界面语言 章节。