我在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。