在debian上的apache坏字符

我在Debian机器上有一个Apache服务器,

我也安装了PHP,有一些不好的字符,显示在该机器上托pipe的所有网站上。

例如,而不是

it's 

表明

 it s 

我认为这可能是一个Apache的问题,因为相同的代码和数据库完美地工作在其他地方,我不是绝对相信,所以我需要做什么样的事情来解决这个问题?

看起来像字符编码有问题。 有几件事你可以尝试:

你有没有试过明确地设置你的HTML输出的字符集来匹配你的数据库的字符集?例如,如果你的数据库有UTF-8,尝试在de <head>标签中的meta标签中声明:

 <meta http-equiv="Content-Type" content="text/html;charset=UTF-8" /> 

对于HTML 5,它要短得多:

 <meta charset="UTF-8" /> 

对于mysql,你可以通过执行下面的语句来确定你的数据库正在使用哪个字符集:

 USE <databasename>; SHOW VARIABLES LIKE 'character_set_database'; 

其他DBMS将有类似的声明。

然而,我不认为你需要为每个页面/站点重复这个(但是如果你这样做肯定不会受到伤害):当然,更改Apache的默认字符集可以调整httpd.conf或apache2中的AddDefaultCharset指令.conf或主要configuration所在的位置:

 # AddDefaultCharset Somethingelse AddDefaultCharset UTF-8 

之后重新加载Apache。