2011-08-30 65 views
0

請求大家幫助我在Cent OS上設置Apache服務器。它看起來像一些編碼問題,但我無法解決它。Apache編碼問題,在瀏覽器中顯示菱形字符

  • 而不是HTML內容它顯示HTML源代碼(鉻,Firefox),IE 9工作正常。它在每個「<」符號後顯示 字符。 http://pdf.gen.in/index1.htm

  • 第二個問題是使用PHP。它顯示具有相似鑽石字符的PHP http://pdf.gen.in/index.php的源代碼,無論它遇到「<」字符。這似乎像PHP問題與第一個問題有關。

回答

0

您應該使用體面的文本編輯器,並始終將php/html的編碼設置爲「沒有BOM的UTF-8」。

創建一個名爲「test.php」的文件,粘貼下面的代碼並保存爲「沒有BOM」的UTF-8編碼,那麼它將工作得很好。

<?php 
phpinfo(); 
?> 
+0

非常感謝您的幫助。我沒有意識到源文件是以Unicode編碼保存的。我將其更改爲UTF-8,現在工作正常。 – geekonweb

+0

@geekonweb UTF-8是php的bug,所以總是使用「沒有BOM的UTF-8」。 – Rufus

+0

什麼是「沒有BOM的UTF-8」?你能解釋一下嗎?我通常使用Textpad作爲代碼編輯器。 – geekonweb

1

這些文件使用UTF-16LE編碼。對於靜態HTML頁面,您可以通過正確設置MIME類型的字符集(目前爲text/html; charset=UTF-8)來使其工作。我不知道PHP的Unicode支持有多強。嘗試使用UTF-8,由於它與ASCII的部分重疊,通常會得到更好的支持。