在静态HTML页面(长文本页面)中,如果我在http://example.com/my_page.html下查看页面,则会显示一些无关的CP-1252引号(例如“quotes”
),但如果在https下查看,它们是呈现为纯ASCII(例如“quotesâ€
)。
Chrome和Firefox下的行为相同。
所以,短期修复是简单地用“
替换引号,但是什么导致http和https之间存在差异?
答案 0 :(得分:1)
字符串"quotes“不是Ascii,而是UTF-8编码的”引号“被误解为windows-1252编码。这很可能是由HTTP标头中的不同Content-Type
行引起的:它们指定了不同的字符编码(或者其中一个标题根本没有指定编码,迫使浏览器猜测,并且他们猜错了。)
这与HTTP与HTTPS无关,但与HTTP标头的差异无关。有关更详细的分析,则需要HTTP标头。