我有一个非常奇怪的问题。我有一个php网站,运行在两个服务器上。一个是Apache(Linux),另一个是IIS(WIndow)。 Linux Server,我只是运行它进行演示。 IIS是我需要托管的实际托管。即使在Linux服务器中使用所有相同的代码,数据库,也没有任何字符。但在IIS中,到处都有角色。我检查了所有元标记,它是utf-8。在数据库中,整理也是utf-8。在mysql数据库中,我得到了那些character字符,但不知何故,在linux中,当我们从数据库中获取内容时,那些Â不显示。它只发生在IIS上。任何人都可以指出我如何解决这个问题?谢谢。
答案 0 :(得分:2)
前一段时间我有类似的问题,这里有一些有用的评论和信息 - 这是PHP,但我相信理论是一样的:Question 386378
答案 1 :(得分:2)
您还需要在HTTP标头中指定UTF-8。使用PHP:
<?php
header('Content-Type: text/plain; charset=utf-8');
?>
使用Apache:
AddDefaultCharset UTF-8
Apache设置可以放在 .htaccess 文件中。
答案 2 :(得分:1)
我检查了所有元标记,它是utf-8。
浏览器不解释元标记。当没有http-header存在时,它只是一个后备。右键单击并选择“查看页面信息”以查看浏览器实际解释页面的编码。
在数据库中,整理也是utf-8。在mysql数据库中
归类与字符显示无关。然而, charset 很重要。连接字符集也是如此。
答案 3 :(得分:0)