Utf 8 为什么我的搜索结果与我的页面编码不在同一个字符集中?

Utf 8 为什么我的搜索结果与我的页面编码不在同一个字符集中?,utf-8,metadata,search-engine,Utf 8,Metadata,Search Engine,我对html页面使用UTF-8编码 <head> <meta charset="utf-8"> 在调试器控制台中,document.characterSet返回“UTF-8” 在页面上,我有元数据(关键字、描述、标题),其中包含一个有效的UTF-8字符:“®”,即UTF-8:“c2ae” 该字符在视图源和页面标题中正确显示 但谷歌搜索结果和必应搜索结果显示为“î”。也就是说,在web爬网过程中,它似乎被转换为ISO-8859-1或Western-1252,显

我对html页面使用UTF-8编码

<head>
   <meta charset="utf-8">

在调试器控制台中,document.characterSet返回“UTF-8”

在页面上,我有元数据(关键字、描述、标题),其中包含一个有效的UTF-8字符:“®”,即UTF-8:“c2ae”

该字符在视图源和页面标题中正确显示

但谷歌搜索结果和必应搜索结果显示为“î”。也就是说,在web爬网过程中,它似乎被转换为ISO-8859-1或Western-1252,显示两个字节:“c2”和“ae”

如果我将字符替换为
®=>(\u00ae)正确显示


除了将我的元数据转换为ISO-8859-1之外,我还应该使用什么最佳实践吗?

查看页面元数据标记,确认它没有使用以下内容:

<meta http-equiv="Content-Type" content="text/html;charset=ISO-8859-1">

问题出在后端,从缓存读取数据时,数据未正确转码到UTF-8。因此,我觉得最好的做法是使用本机UTF-8 BMP字符,使用正确的页面编码,而不需要使用html实体值。

在我提到的第一句话中,我的页面编码为UTF-8,这就是我的意思。我正在使用上面的html5标准。在控制台中,键入document.characterSet绝对返回“UTF-8”。我会澄清这个问题,谢谢。我已经更新了我的答案,请发布你的元字符集和内容字符集。请参阅我关于html实体的说明。你可能看到了一些缓存结果吗?不确定如何验证这一点,可能需要做一些小的更改,例如…-我们使用了google web admin实用程序,在该实用程序中,您生成一个哈希并将其添加到另一个元数据标记,然后请求重新获取页面。fresh fetch实用程序显示传入的元数据并在其中包含字符。您不应该将解决方案编辑到问题中,而应该将答案与解决方案一起发布。
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
<meta charset="">
&   ampersand   &amp;   &#38;

®   registered trademark    &reg;   &#174;