Как изменить кодировку страницы html

Как кодировка влияет на отображение сайта, чем отличается UTF-8 от Windows 1251 и где указать кодировку.

Как кодировка влияет на отображение сайта, чем отличается UTF-8 от Windows 1251 и где указать кодировку.

В статье:

  1. Зачем нужна кодировка

  2. Виды кодировок

  3. Как определить кодировку на сайте

  4. Если кодировка не отображается

  5. Где указать кодировку сайта

Разбираем, на что влияет кодировка, нужно ли указывать ее самостоятельно, и почему могут появиться так называемые «кракозябры» на сайте.

Зачем нужна кодировка

Кодировка (Charset) — способ отображения кода на экране, соответствие набора символов набору числовых значений. О ней сообщает строка Content-Type и сервер в header запросе.

Несовпадение кодировок сервера и страницы будет причиной появления ошибок. Если они не совпадают, информация декодируется некорректно, так что контент на сайте будет отображаться в виде набора бессвязных букв, иероглифов и символов, в народе называемых «кракозябрами». Такой текст прочитать невозможно, так что пользователь просто уйдет с сайта и найдет другой ресурс. Или останется, если ему не очень важно содержание:

На сайте слетела кодировка, пример

Студентка списывала реферат с формулами, а на сайте слетела кодировка. Реальная история

Google рекомендует всегда указывать сведения о кодировке, чтобы текст точно корректно отображался в браузере пользователя.

Кодировка влияет на SEO?

Разберемся, как кодировка на сайте влияет на индексацию в Яндекс и Google.

Яндекс четко заявляет:

«Тип используемой на сайте кодировки не влияет на индексирование сайта. Если ваш сервер не передает в заголовке кодировку, робот Яндекса также определит ее самостоятельно».

Позиция Google такая же. Поисковики не рассматривают Charset как фактор ранжирования или сигнал для индексирования, тем не менее, она косвенно влияет на трафик и позиции.

Если кодировка сервера не совпадает с той, что указана на сайте, пользователи увидят нечитабельные символы вместо контента. На таком сайте сложно что-либо понять, так что скорее всего пользователи сбегут, а на сайте будут расти отказы.

Некорректно указана кодировка на сайте

Пример страницы со слетевшей кодировкой

Поэтому она важна для SEO, хоть и влияет на него косвенно через поведенческие. Пользователи должны видеть читабельный текст на человеческом языке, чтобы работать с сайтом.

Виды кодировок

Существует довольно много видов, но сейчас распространены два:

UTF-8

Unicode Transformation Format — универсальный стандарт кодирования, который работает с символами почти всех языков мира. Символы могут занимать от 1 до 4 байт, такое кодирование позволяет создавать мультиязычные сайты.

Есть несколько вариантов — UTF-8, 16, 32, но чаще используют восьмибитное.

Windows-1251

Этот вид занимает второе место по популярности после UTF-8. Windows-1251 — кодирование для кириллицы, созданное на базе кодировок, использовавшихся в русификаторах операционной системы Windows. В ней есть все символы, которые используются в русской типографике, кроме значка ударения. Символы занимают 1 байт.

Выбор кодировки остается на усмотрение веб-мастера, но UTF-8 используют намного чаще — ее поддерживают все популярные браузеры и распознают поисковики, а еще ее удобнее использовать для сайтов на разных языках.

Определить кодировку страницы своего или чужого сайта можно через исходный код страницы. Откройте страницу сайта, выберите «Просмотр кода страницы» (сочетание горячих клавиш Ctrl+U» в Google Chrome) и найдите упоминание «charset» внутри тега head.

На странице сайта используется кодировка UTF-8:

Как посмотреть, какая кодировка на сайте

Указание кодировки в коде страницы

Узнать вид кодирования можно с помощью «Анализа сайта». Сервис проверяет в том числе и техническую сторону ресурса: анализирует серверную информацию, определяет кодировку, проверяет редиректы и другие пункты.

Как определить кодировку на сайте

Фрагмент анализа серверной информации сайта

С помощью этого же сервиса можно проверить корректность указанного кодирования. Аудит внутренних страниц «Анализа сайта» проверяет кодировку сервера и сравнивает ее с той, которая указана на внутренней странице. Найденные ошибки Анализ покажет в результатах проверки, и вы сразу узнаете, где нужно исправить.

Проверка кодировки на сайте

Отчет о технических данных
Проверить корректность кодировки онлайн
Кодировка сервера и страницы

Проверить кодировку еще можно через сервис Validator.w3, о котором писали в статье о проверке валидации кода. Нужная надпись находится внизу страницы.

Сервис для проверки кодировки на сайте

Кодировка сайта в валидаторе

Если валидатор не обнаружит Charset, он покажет ошибку:

Некорректная кодировка, пример

Ошибка указания кодировки

Но валидатор работает не точно: он проверяет только синтаксис разметки, поэтому может не показать ошибку, даже если кодирование указано неправильно.

Если кодировка не отображается

Если вы зашли на чужой сайт с абракадаброй, а вам все равно очень интересно почитать контент, то в Справке Google объясняют, как исправить кодирование текста через браузер.

О проблеме возникновения абракадабры на вашем сайте будут сигнализировать метрики поведения: вырастут отказы, уменьшится глубина просмотров. Но скорее всего вы и раньше заметите, что что-то пошло не так.

Главное правило — для всех файлов, скриптов, баз данных сайта и сервера должна быть указана одна кодировка. Ошибка может возникнуть, если вы случайно указали на сайте разные виды кодировки.

Яндекс советует использовать одинаковую кодировку для страниц и кириллических адресов структуры. К примеру, если робот встретит ссылку href=»/корзина» на странице с кодировкой UTF-8, он сохранит ее в этом же UTF-8, так что страница должна быть доступна по адресу «/%D0%BA%D0%BE%D1%80%D0%B7%D0%B8%D0%BD%D0%B0».

Где указать кодировку сайта

Если проблема возникла на вашем сайте, способ исправления зависит от вида сайта. Для одностраничника достаточно указать кодировку в мета-теге страницы, а для большого сайта есть разные варианты:

  • кодировка в мета-теге;
  • кодировка в .htaccess;
  • кодировка документа;
  • кодировка в базе данных MySQL.

Кодировка в мета-теге

Добавьте указание кодировки в head файла шаблона сайта.

При создании документа HTML укажите тег meta в начале в блоке head. Некоторые браузеры могут не распознать указание кодировки, если оно будет ниже.

Мета-тег может выглядеть так:

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

или так:

<meta charset="utf-8">

В HTML5 они эквивалентны.

Где указывать кодировку на сайте

Тег кодировки в HTML

В темах WordPress обычно тег «charset» с кодировкой указан по умолчанию, но лучше проверить.

Кодировка в файле httpd.conf

Инструкции для сервера находятся в файле httpd.conf, обычно его можно найти на пути «/usr/local/apache/conf/».

Если вам нужно сменить кодировку Windows-1251 на UTF-8, замените строчку «AddDefaultCharset windows-1251» на «AddDefaultCharset utf-8».

Осторожнее: если вы измените в файле кодировку по умолчанию, то она изменится для всех проектов на этом сервере.

Убедитесь, что сервер не передает HTTP-заголовки с конфликтующими кодировками.

Кодировка в .htaccess

Добавьте кодировку в файл .htaccess:

  1. Откройте панель управления хостингом.
  2. Перейдите в корневую папку сайта.
  3. В файле .htaccess добавьте в самое начало код:
    1. для указания кодировки UTF-8 — AddDefaultCharset UTF-8;
    2. для указания кодировки Windows-1251 — AddDefaultCharset WINDOWS-1251.
  4. Перейдите на сайт и очистите кэш браузера.

Кодировка документа

Готовые файлы HTML важно сохранять в нужной кодировке сайта. Узнать текущую кодировку файла можно через Notepad++: откройте файл и зайдите в «Encoding». Меняется она там же: чтобы сменить кодировку на UTF-8, выберите «Convert to UTF-8 without BOOM». Нужно выбрать «без BOOM», чтобы не было пустых символов.

Кодировка Базы данных

Выбирайте нужную кодировку сразу при создании базы данных. Распространенный вариант — «UTF-8 general ci».

Где менять кодировку у БД:

  1. Кликните по названию нужной базы в утилите управления БД phpMyAdmin и откройте ее.
  2. Кликните на раздел «Операции»:
  3. Введите нужную кодировку для базы данных MySQL:
  4. Перейдите на сайт и очистите кэш.

С новой БД проще, но если вы меняете кодировку у существующей базы, то у созданных таблиц и колонок заданы свои кодировки, которые тоже нужно поменять.

Для всех таблиц, колонок, файлов, сервера и вообще всего, что связано с сайтом, должна быть одна кодировка.

Проблема может не решиться, если все дело в кодировке подключения к базе данных. Что делать:

  1. Подключитесь к серверу с правами mysql root пользователя:
    mysql -u root -p
  2. Выберите нужную базу:
    USE имя_базы;
  3. Выполните запрос:
    SET NAMES ‘utf8’;

Если вы хотите указать Windows-1251, то пишите не «utf-8», а «cp1251» — обозначение для кодировки Windows-1251 у MySQL.

Чтобы установить UTF-8 по умолчанию, откройте на сервере my.cnf и добавьте следующее:

В области [client]:

default-character-set=utf8

В области [mysql]:

default-character-set=utf8

В области [mysqld]:

collation-server = utf8_unicode_ci
init-connect='SET NAMES utf8'

character-set-server = utf8

Вы когда-нибудь сталкивались с проблемами кодировки на сайте?

Что такое кодировка страницы или «meta charset«, вообще — для чего нужна кодировка страницы — она помогает браузеру правильно отображать содержимое страницы. Где располагается тег кодировки страницы. Как изменить кодировку страницы.

  • О кодировке вообще и о типах и видах кодировок

    Существует огромное количество кодировок, которое нам знать вообще ни к чему. И естественно, что возможны проблемы с кодировкой страницы.

    Наверняка вы видели, когда заходили на какую-то страницу сайта, то на ней были непонятные символы, из которых ничего невозможно было понять — в народе обзываемые «кракозябрами.»

    + Встроенная и наружная кодировка..

    У физически существующего файла может быть и «Встроенная и наружная кодировка».
    О внутренней, как-то мы говорили на примере — txt файла. И аналогично может быть и с файлами html.хзъ

    И наружная кодировка с помощью тега meta:

    <meta charset=»UTF-8″>

    Нажимаем по странице ctrl+U и видим нашу кодировку в самом верху страницы:

    О кодировке вообще и о типах и видах кодировок

    Типы и виды кодировок

    Нас конечно же прежде всего интересуют кодировки, которые завязаны на русском языке.

    1.

    «utf-8» – это универсальная кодировка.

    2.

    «windows-1251» – это кириллица.

    И тут конечно же я должен сказать о собственном опыте, которому уже намечается 10 лет… так вот!

    В самом начале, когда я только начинал, я начинал с кодировки «windows-1251», но с этой кодировкой, постоянно возникали какие-то проблемы, сейчас уже вспомнить будет трудно, но в конце концов, я перешел на «utf-8»

  • Что означает обозначение utf-8

    И конечно же нам требуется пару строк написать о том, что же означает эта самая кодировка «utf-8» :

    И конечно же нам требуется пару строк написать о том, что же означает эта самая кодировка «utf-8» :
    UTF-8 (от англ. Unicode Transformation Format, 8-bit — «формат преобразования Юникода, 8-бит») — распространённый стандарт кодирования текста, позволяющий более компактно хранить и передавать символы Юникода, используя переменное количество байт (от 1 до 4), и обеспечивающий полную обратную совместимость с 7-битной кодировкой ASCII.

    Я думаю, что дальше нет никакого смысла углубляться…

    Нам в принципе нужно, чтобы наши данные отображались на станице корректно…

  • Как определить кодировку страницы?

    В открытом браузере нажимаем сочетание кнопок ctrl + U.

    Должна открыться дополнительная страница с кодом!

    Как определить кодировку страницы?

  • Где находится кодировка страницу?

    Обычно  кодировку ставят на странице в самом начале, вот пример кодировки, здесь кодировка страницы стоит на 4 строке. И имеет вид:

    <meta http-equiv=»Content-Type» content=»text/html; charset=utf-8″/>

    Что означает, что страница сделана в кодировке utf-8.

    кодировка страницы

    Это – одна из самых распространённых кодировок.

    Либо кириллическая кодировка:

    <meta  charset=»windows-1251″>

  • Как изменить кодировку страницы html

    Если это простая – физическая(файл) — стандартная страница html, то вам просто её нужно открыть в каком-то редакторе и заменить кодировку на ту, которая вам требуется!

    Как изменить кодировку страниц, если у вас движок!? В каждом движке есть определенная логика. Как в любом скрипте. Как у обычной страницы у движка есть блоки, из которых он собирает эти страницы – вам просто нужно найти тот блок, который и выводит вашу кодировку в браузер…

  • Пример неправильной кодировки.

    Иногда данная кодировка вызывает разные проблемы…

    К примеру некоторые хостинги, просто не поддерживают данную кодировку.

    Вот так будет выглядеть страница с нарушенной кодировкой.

    кодировка страницы

  • Почему на странице появляются кракозябры!?

    На самом деле есть несколько причин для возникновения так называемых кракозябр!

    1.

    Неправильная кодировка страницы, ну к примеру, если вы установите кодировку китайскую, а напишите кириллический текст, то что должно произойти!?  Браузер просто сойдет с ума не зная, что вам показать и покажет кракозябры.

    2.

    Неправильная настройка браузера. Либо браузер не может автоматически найти эту строку на странице, которая указывает на кодировку страницы.

    3.

    Сервер не поддерживает данную кодировку!

  • Как изменить неправильную кодировку!?

    Кодировки на странице можно найти в нескольких местах:

    1). Изменение кодировки страниц в тегах «meta»

    Если идет речь о вашей странице на вашем сайте, то нужно открыть вашу страницу в блокноте и изменить кодировку страницы. Если сайт на движке,  то нужно найти основную страницу, в которой прописана кодировка и изменить её на соответствующую!

    Кодировка страницы прописывается в тегах «meta»

    Пример:

    У меня, естественно, самописный движок, поэтому, мы открываем основную страницу, которая отвечает за всё и там есть кодировка страницы :

    1). Изменение кодировки страниц в тегах ‘meta‘

    2.

    Если браузер неправильно трактует кодировку. То нужно разбираться с браузером.

    3.
    Если это проблема сервера, то стоит попробовать  внести изменения в файл — .htaccess внеся в него такую надпись:

    Если это не помогает, то придется поглубже окунуться в эту тему! Если у вас хорошая поддержка на хостинге, как например тот, что у меня! И если я в тупике, то частенько они меня выручали !

    Серёжа Сыроежкин

    Серёжа СыроежкинКопирайтер

    1.06.2015

    Изменить кодировку

    В текущей статье мы поговорим о том, как изменить кодировку на сайте, какие кодировки бывают и какую кодировку выбрать более оптимально.

    Кодировка сайта задается с помощью тега meta. Что такое мета-теги и для чего они необходимы мы уже обсуждали в статье Мета-теги. Задается кодировка страницы следующим образом:

    <meta charset="utf-8">

    Эта строка помещается между тегами <head></head>.

    Примечание: Помимо указания нужной кодировки, рекомендуется указывать и язык контента на странице, чтобы помочь поисковым системам правильно определить язык на сайте:

    <meta http-equiv="Content-Language" content="ru">

    Основные типы кодировок на сайте

    Поскольку мы нацелены на русскоязычную аудиторию, будем говорить о наиболее популярных кодировках, которые поддерживают русский язык. К ним относятся:

    • UTF-8 — (Юникод) на данный момент наиболее популярная кодировка для веб-сайтов (8 бит);
    • Windows-1251 — одна из наиболее распространенных кодировок (8 бит);
    • KOI8-R — стандарт для кириллицы в Unix-подобных системах (8 бит).

    Юникод (Unicode) является стандартом кодирования, который позволяет представить символы практически всех языков письменности (в том числе математических, музыкальных и других). Юникод имеет своё проявление в форматах UTF-8, UTF-16 и UTF-32, которые различаются между собой способом хранения данных. Для обеспечения наилучшей совместимости со старыми системами используется 8-битная кодировка.

    Изменение кодировки текста при помощи блокнота

    Чтобы изменить кодировку произвольного текста, можно воспользоваться обычным блокнотом. Допустим, вам необходимо изменить кодировку текста с KOI8 на Windows-1251. Для этого нужно:

    • Перенести нужный текст в стандартный редактор «Блокнот» (Notepad);
    • В меню «Вид» -> «Кодировка» выбрать «Кирилица (Windows)».

    При сохранении файла с помощью блокнота есть возможность выбрать нужную кодировку.

    В конструкторе сайтов «Нубекс» все сайты создаются в кодировке UTF, благодаря чему корректно отображаются различные символы и языки.

    Смотрите также:

    • Текст
    • Код
    • Сервер

    Каждый вебмастер сталкивался с проблемой неправильного отображения текста на странице:
    Кракозябры

    Это случается по одной из следующих причин:
    текст имеет кодировку, которая не соответствует указанной в документе или передаваемой сервером;
    кодировка документа указано неверно;
    сервер отдаёт документ, указывая неправильную кодировку.

    Далее везде будет применяться кодировка UTF-8, так как она наиболее универсальная и её рекомендуется использовать повсеместно.

    Текст

    Первым делом нужно проверить кодировку текста в документе. Рассмотрим как это делается в Блокноте и Notepad++.

    Блокнот

    1. Открываем Блокнот: Win+R → notepad; и копируем в него код страницы.
    2. Кликаем Файл → Сохранить как… или нажимаем Ctrl+S.
    3. В поле Имя файла вводим название документа с расширением.
    4. В поле Тип файла выбираем Все файлы, так как иначе не учтётся введённое расширение и файл сохраниться в формате txt (это зависит от настроек операционной системы).
    5. Ставим кодировку UTF-8 и сохраняем документ.

    Сохранение файл с кодировкой UTF-8 в Блокноте

    Notepad++

    1. Открываем страницу в Notepad++.
    2. Выбираем Кодировки → Преобразовать в UTF-8 без BOM.
    3. Сохраняем документ.

    Установка кодировки UTF-8 текста в программе Notepad++

    Нужно выбрать именно Преобразовать в UTF-8 без BOM, а не Кодировать в UTF-8 (без BOM).

    Код

    За представление кодировки HTML-документа отвечает элемент <meta> с атрибутом charset, который располагается между <head> и </head>:
    HTML 5:

    <meta charset="utf-8">
    HTML 4.01:

    <meta http-equiv="content-type" content="text/html; charset=utf-8">

    Сервер

    На реальном хостинге никто не предоставит возможность изменять конфигурацию сервера своим клиентам, поэтому этот момент пропускаем.

    Чтобы указать кодировку, с которой сервер должен отдавать HTML-документы, нужно сделать следующее (на примере использования Блокнота):
    открыть Блокнот: Win+R → notepad; и написать в нём следующую строку:
    AddDefaultCharset UTF-8
    кликнуть Файл → Сохранить как… или нажать Ctrl+S;
    в поле Имя файла ввести .htaccess;
    в поле Тип файла выбрать Все файлы и сохранить файл в корень сайта.

    Сохранение файла с расширением .htaccess через Блокнот

    Файлы без имени с расширением .htaccess позволяют конфигурировать некоторые опции сервера Apache.

    Если всё сделано правильно, то текст на странице должен отобразиться правильно, то есть так, как он представлен в текстовом редакторе.

    • Как изменить кодировку Денвера

    15.08.2014

    So you’ve heard that it’s useful to use Unicode
    (UTF-8) for your pages rather than a legacy character encoding such as Latin1 (Windows 1252 or ISO 8859-1) or Shift_JIS, and you’ve heard that others are doing it, but you’re not sure how it works.

    This page will help you change the character encoding of your HTML page to UTF-8.

    Answer

    Below we summarise the information you need to convert a simple page to a Unicode character encoding. Follow the links to other articles on the site if you need to get
    detailed information about any step.

    For much more detailed advice about converting complex sites, software and data to Unicode, see the article Migrating to Unicode.

    Step 1: Save the data as UTF-8

    It will not be sufficient to just change the declarations inside your pages to say that the page is encoded in UTF-8. You must ensure that
    your data is actually encoded, ie. saved, in UTF-8.

    If you are working with hand-edited files then you should use the options of your editor to save the file in UTF-8 rather than the encoding you
    were using. If you are building files from scripts and databases, you should ensure that the data is converted as necessary and that the correct
    parameters are set in your scripting environment.

    Note that you may have to ensure that the data does not include a UTF-8 signature,
    also known as a byte-order mark (BOM).

    Step 2: Declare the encoding in your page

    You should change the character encoding declaration in
    your page (or add one if you don’t already declare it).

    In its simplest form, this looks as follows, and should come at the beginning of the head element in your HTML code.

    <meta charset="utf-8">

    Step 3: Ensure that your server does the right thing

    Although your data is in UTF-8 and you have declared it in the page, your server may still be serving the page with an accompanying HTTP header that says it is something else.

    Test it by putting the URL of your page in this form. It will take you to the Internationalization Checker. Look in the table for the row with the title HTTP Content-Type, under Character Encoding, and check that it says either UTF-8 or No encoding information found.

    If the HTTP Content-Type shows an encoding other than UTF-8 you’ll need to take steps to rectify it, because the declaration in the HTTP header will override information inside the page

    Server admin privileges are needed to change the encoding sent in the HTTP header, though you may be able to do so yourself even if
    you are serving files via an ISP. Consult your server admin person. See the explanation of one
    way to do this for an Apache server.

    Нужно правильно раскодировать сигналы, которые наш мозг получает из окружающей среды. Проще говоря, следует правильно «настроить» свой взгляд на жизнь. Ну, вроде не полупустой кошелек, а наполовину полный. То есть, требуется использовать нужную кодировку. Для интернета чаще всего правильной является кодировка utf:

    • Немного о кодировках
      • Кодировка UTF-8
      • Как установить кодировку в HTML и PHP
      • Глобальные настройки кодировки
      • Изменение кодировки базы данных

    Наверное, не является секретом тот факт, что основным типом содержимого во всемирном веб-пространстве является текст. Конечно, сейчас с этим утверждением можно поспорить, но буквально какой-то десяток лет назад это было так.

    Но передача текста в цифровом формате происходит совсем иначе, чем у нас на экране. Для перевода текста в машинный код используется двоичная система исчисления, состоящая лишь из 0 и 1.

    Следующим этапом передачи текста в виртуальном пространстве является его отображение на клиентских машинах с помощью браузера, интерпретирующего html. Вот тут и начинается самое интересное, когда браузер клиента и веб-страница содержат в себе текстовые данные в разных кодировках. Тогда пользователь на своем мониторе видит не текст, а какие-то непонятные (нечитаемые) символы:

    Немного о кодировках

    Чаще всего нужно всего лишь поменять кодировку веб-страницы на кодировку utf8. Ведь она является наиболее распространенной во всем интернете.

    Наиболее распространенная среди стандартизированных и общепринятых текстовых кодировок. Расшифровывается как «восьмибитный формат преобразования Юникода» или «Unicode Transformation Format».

    Стандарт был разработан еще в 1992 году. В настоящее время он широко применяется не только во всемирной паутине, но и на прикладном уровне (локальные машины и операционные системы). Основным достоинством кодировки является ее совместимость с ASCII:

    Кодировка UTF-8

    ASCII («American standard code for information interchange») еще одна (но более старая) кодировка представления текстовых данных. В ее таблице символов значения печатных и непечатных знаков заданы с помощью чисел в шестнадцатеричной системе исчисления.

    При использовании UTF-8 для передачи данных в формате ASCII используются 7 первых битов. Последний (восьмой) служит для вывода «мусора» (некорректно раскодированных данных). Что при использовании кодировки для латинских символов существенно уменьшает объем текстовых данных.

    Как уже говорилось, часто для корректного отображения текста достаточно лишь поменять кодировку документа. Рассмотрим, как это можно сделать в различных дисциплинах, применяемых для построения веб-пространства.

    Для установки utf 8 кодировки в html используется специальный тег <meta>. Он объединяет в себе в форме атрибутов значение метатегов.

    Метатеги используются для передачи и хранения информации, предназначенной для браузеров и поисковиков. Одним из атрибутов тега является charset. Он служит для установки кодировки веб-страницы. Пример использования:

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

    Как установить кодировку в HTML и PHP

    Также можно установить кодировку некоторым элементам страницы. Например, ссылке. Для этого также используется атрибут charset, значением которого выступает нужная кодировка:

    <a href="mydoc.html" charset="utf-8">list of publications</a>

    Кроме этого можно присваивать значения непосредственно заголовкам http, которые передаются вместе с ответом на запрос от браузера к серверу. В таком случае кодировка сайта utf 8, переданная через заголовок, будет доминирующей над значением, заданным внутри веб-страницы.

    Многие из страниц ресурсов не являются статическими, а динамически создаются благодаря использованию серверных языков программирования. Чаще всего для построения сайтов применяют PHP. Поэтому важно знать о его средствах, позволяющих «на лету» поменять кодировку генерируемой веб-страницы.

    Для установки и модификации значений заголовка используется функция header(). Ее синтаксис:

    void header ( string $string [, bool $replace = true [, int $http_response_code ]] )

    Пример записи:

    header('Content-Type: text/html; charset= utf-8');

    Чтобы корректно задать в php кодировку utf 8, вызов функции header() в коде должен находиться выше всех тегов html.

    Описанные выше методы могут использоваться для отдельных веб-страниц или небольших сайтов. Но что делать, если вы имеете дело с ресурсом, состоящим из нескольких сотен страниц и десятка разделов? Давайте разберемся, как установить кодировку utf 8 для всего сайта.

    Для этого нужно вносить изменения в дополнительный файл конфигурации ресурса. Он носит название .htaccess. Сначала его нужно открыть в любом текстовом редакторе, а затем добавить туда строку:

    Глобальные настройки кодировки

    В качестве более глобального способа изменения кодировки стоит рассмотреть пример на основе любого локального сервера. Для большей наглядности мы возьмем Denwer, который довольно широко распространен в наших краях.

    Чтобы изменить кодировку всех ресурсов, размещенных на нашем сервере Apache, нужно отредактировать содержимое конфигурационного файла httpd.conf. Он находится по пути:

    Как и в предыдущем примере, в нем нужно заменить значение AddDefaultCharset на нужное. В нашем случае это utf-8:

    Глобальные настройки кодировки - 2

    Изменение кодировки рассмотрим на примере MySQL. Так как это одна из самых востребованных и распространенных СУБД, применяемых в сайтостроении. Все изменения можно произвести в файле my.ini. В Денвере он находится по пути:

    Здесь нужно поменять значение нескольких полей на utf-8:

    • default-character-set;
    • character-set-server;
    • init-connect = «set names»;
    • default-character-set.

    И затем добавить строку skip-character-set-client-handshake:

    Изменение кодировки базы данных

    Подобные изменения можно внести не только для всех баз данных на сервере, но и для отдельно взятой в php базы mysql. Сделать это можно через пользовательский интерфейс оболочки PHPMyAdmin.

    Сначала узнаем, какие кодировки установлены по умолчанию в нашей базе данных. Для этого вводим запрос SQL:

    SHOW VARIABLES LIKE 'char%';

    Вот какой ответ мы должны получить:

    Изменение кодировки базы данных - 2

    Если какие-либо значения нас не удовлетворяют, то нужно их изменить. Воспользуемся для этого запросом к ядру сервера СУБД:

    ALTER DATABASE `my_db1` DEFAULT CHARACTER SET utf8;

    В результате мы получим новые значения переменных character_set_connection, character_set_results и character_set_client.

    К сожалению, не все так просто обстоит с изменением кодировки в таблицах Excel. Для этого придется воспользоваться сторонней программой для перекодирования файлов. Или обработать данные с помощью громоздких функций.

    Мы рассмотрели все основные способы изменения веб-документов на кодировку utf. Надеемся, что этот материал поможет вам не только выбрать правильную кодировку текста, но и «установить» правильный взгляд на жизнь.

    Иногда в интернете встречаются страницы, на которых некоторые буквы отображаются в виде странных символов или вопросительных знаков. Эта ошибка обычно связана с проблемой кодировки символов. Вот как это обычно выглядит:

    В приведенном выше примере квадратики и вопросительные знаки — это символы, добавленные в исходный код HTML-страницы, которые браузер не может интерпретировать для отображения. Для того чтобы избавиться от этих символов, вам следует найти проблемный код и изменить его на стандартные символы ASCII. Если после редактирования кода, странные символы все еще отображаются, воспользуйтесь одним из приведенных ниже решений.

    Апостроф и кавычки

    В копии страницы вы можете использовать левый и правый апостроф и кавычки, однако на HTML-страницах вы должны использовать центрированный апостроф и центрированные кавычки, чтобы избежать проблем с неправильным отображением в браузере.

    Исправление отдельных символов

    Если странные символы отображается на вашем сайте в небольшом количестве и при этом вы не хотите менять тип документа, как описано ниже, вы можете использовать HEX-код, чтобы исправить их. Вам нужно будет найти код для каждого проблемного символа.

    Изменение кодировки HTML-страницы (HTML5)

    Если на вашем сайте отображаются странные символы, это связано с неверной кодировкой базы данных и / или страницы. Для решения этой проблемы необходимо изменить кодировку страницы. Ваш сайт также должен иметь метатег UTF-8:

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

    Вы также можете попробовать добавить эту строку в начале страницы index.php:

    header('Content-Type: text/html; charset=utf-8');

     Использование опции «Сохранить как» с другой кодировкой

    Откройте HTML-страницу в текстовом редакторе (к примеру, Блокнот или TextEdit). С помощью опции «Сохранить как» сохраните страницу как HTML-страницу как «UTF-8» вместо «ANSI». Проверьте тег «meta charset» в верхней части HTML-страницы, чтобы увидеть, какой тип кодировки используется на странице, и сохраните этот тип.

    Понравилась статья? Поделить с друзьями:

    Читайте также:

  • Как изменить кодировку сервера mysql
  • Как изменить кодировку сайта на utf 8
  • Как изменить кодировку пульта
  • Как изменить кодировку программы
  • Как изменить кодировку пдф файла

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии