Unicode шрифты на странице php в веб-браузере отображаются как? оценки, как я могу это исправить? - PullRequest
4 голосов
/ 05 июля 2011

Я занимаюсь разработкой веб-сайта с некоторыми индийскими символами Unicode, у меня на компьютере установлен xampp, и когда я тестирую на локальном сервере, символы Unicode показываются нормально, но когда я загружаю его на веб-сервер, все символы Unicode показывают как??отметки ....

Мой веб-сервер основан на Linux, так что кто-нибудь может помочь ....

Это с моего сайта:

enter image description here

Это с моего локального веб-сервера:

enter image description here

Ответы [ 3 ]

2 голосов
/ 05 июля 2011

Убедитесь, что ваш сервер использует UTF8 в качестве кодировки по умолчанию (возможно, вам придется изменить настройки сервера).

AddDefaultCharset utf-8

Поместите строку выше в ваш httpd.conf (если это возможно)...то перезапустите сервер) или .htaccess -файлу на верхнем уровне DOCUMENT_ROOT (перезапуск не требуется)

Объявление кодировки через метатег не будет достаточно, оно будетперезаписывается заголовком charset (если таковой существует), отправленным сервером.

Вы также можете отправить заголовок из ваших скриптов:

<?php header('Content-Type: text/html; charset=utf-8'); ?>
0 голосов
/ 05 июля 2011

Вам необходимо объявить набор символов UTF-8 в заголовках HTTP, способ сделать это зависит от вашего сервера: http://www.w3.org/International/O-HTTP-charset

Если вы не хотите настраивать свой веб-сервер, вытакже можно использовать тег <meta http-equiv> в <head> вашей веб-страницы, который может быть эквивалентен заголовку HTTP.

0 голосов
/ 05 июля 2011

Убедитесь, что вы объявили свою кодировку как utf-8 в своем html, как в этом примере из документов Mozilla :

<!-- Defining the charset in HTML4 -->
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<!-- In HTML5 -->
<meta charset="utf-8">
...