我们的PHP页面只是一个UTF-8网页,在元描述中包含中文字符。
我不知道为什么当有人试图分享Whatsapp的链接时,它会显示破碎的字母。
但我分享了它,发现它没有损坏(正常)。
背后可能的原因是什么?我们添加了两个:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
和
header('Content-Type: text/html; charset=UTF-8');
有人有任何线索吗?谢谢!
==========
答案 0 :(得分:1)
正在使用的软件(比如博客软件)不能很好地处理UTF-8编码的内容,这会导致非UTF8输出到浏览器。
并非博客软件在所有内容操作中都存在缺陷,情况恰恰相反,仅在某些内容操作中存在缺陷。但它发生在我在那里看过的每一页上都足以使a simple UTF-8 check失败:
Messages.update({roomid: roomid, 'messages.status': 'unread'},
{ '$set': { 'messages.$.status': 'read' }},
(err, result) => {
if (err) {
console.log({ error: 'Unable to update status. due to ' + err, });
} else {
console.log(result);
}
}
);
问题是生成描述文本(用于描述的HTML元标记和og:description)。该部分软件没有考虑内容Unicode UTF-8编码,只是切断了一些二进制长度(很可能,我还没有看到代码)。这种切割方式打破了UTF-8输出。
此修复程序旨在消除软件中的缺陷。