Кодировка текста ascii (windows 1251, cp866, koi8-r) и юникод (utf 8, 16, 32)

Why is it important?

When you think of the fact that every single time text is transmitted, it needs to be encoded in a specific charset and decoded on the other side, the importance of charset is quite obvious. This means that without proper character coding, a browser will display garbage text because it simply does not understand what is being put into it and has to make a quick uninformed guess.

It is also important in html forms because when you input text into text boxes on sites or social media platforms, it has to be encoded carefully. If this information is unavailable for any reason, the incorrect mapping could lead to the loss of vital information.

What a character set does is to provide a key to unlock and crack a code that passes between the user and the website.

It is a set of structured mappings between the bytes in the computer and the characters in the character set. If this key is missing, the data looks like written garbage. This means that when you input text through a keyboard, the character set links the characters you choose to specific bytes in computer memory, and then to display the text it reads the bytes back into the characters.

C0 Controls

The control characters were originally designed to control
hardware devices.

Control characters (except horizontal tab, carriage return, and line feed)
have nothing to do inside an HTML document.

Char Dec Hex Description
NUL 0000 null character
SOH 1 0001 start of header
STX 2 0002 start of text
ETX 3 0003 end of text
EOT 4 0004 end of transmission
ENQ 5 0005 enquiry
ACK 6 0006 acknowledge
BEL 7 0007 bell (ring)
BS 8 0008 backspace
HT 9 0009 horizontal tab
LF 10 000A line feed
VT 11 000B vertical tab
FF 12 000C form feed
CR 13 000D carriage return
SO 14 000E shift out
SI 15 000F shift in
DLE 16 0010 data link escape
DC1 17 0011 device control 1
DC2 18 0012 device control 2
DC3 19 0013 device control 3
DC4 20 0014 device control 4
NAK 21 0015 negative acknowledge
SYN 22 0016 synchronize
ETB 23 0017 end transmission block
CAN 24 0018 cancel
EM 25 0019 end of medium
SUB 26 001A substitute
ESC 27 001B escape
FS 28 001C file separator
GS 29 001D group separator
RS 30 001E record separator
US 31 001F unit separator
       
DEL 127 007F delete (rubout)

❮ Previous
Next ❯

Кодировки стандарта UNICODE

Юникод (англ. Unicode) — стандарт кодирования символов, позволяющий представить знаки почти всех письменностей мира, и специальных символов. Представляемые в юникоде символы кодируются целыми числами без знака. Юникод имеет несколько форм представления символов в компьютере: UTF-8, UTF-16 (UTF-16BE, UTF-16LE) и UTF-32 (UTF-32BE, UTF-32LE). (Англ. Unicode transformation format — UTF).UTF-8 — это в настоящее время распространённая кодировка, которая нашла широкое применение в операционных системах и веб-пространстве. Текст, состоящий из символов Unicode с номерами меньше 128 (область с кодами от U+0000 до U+007F), содержит символы набора ASCII с соответствующими кодами. Далее расположены области знаков различных письменностей, знаки пунктуации и технические символы. Под символы кириллицы выделены области знаков с кодами от U+0400 до U+052F, от U+2DE0 до U+2DFF, от U+A640 до U+A69F.

Кодировка UTF-8 является универсальной и имеет внушительный резерв на будущее. Это делает ее наиболее удобной кодировкой для использования в интернете.

HTML Символы
Кодирование URL

Принципы работы

UTF-8 является лишь представлением Unicode в 8-битном виде. Символы с кодами меньше 128 представляются одним байтом (Латинский алфавит, простейшие знаки препинания и арабские цифры), а так как в Unicode они повторяют ASCII, то текст написанный только этими символами будет являться текстом в ASCII.

Символы с кодами от:

  • 128 — 2-мя байтами.(Кириллица, расширенная латиница, арабский, армянский, греческий, еврейский и коптский алфавит, сирийское письмо, некоторые знаки препинания).
  • 2048 — 3-мя байтами (Все другие современные формы письменности, сложные знаки препинания; математические и другие специальные символы).
  • 65536 — 4-мя байтами (Музыкальные символы, смайлы, редкие китайские иероглифы, вымершие формы письменности).

5 и 6 байтов не используется в Unicode.

Неправильная кодировка результатов из базы данных MySQL

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

Нужно начать с определения кодировки ваших таблиц. Можно посмотреть в phpMyAdmin:

Обратите внимание на столбец «Сравнение», запись «utf8_unicode_ci» означает, что используется кодировка UTF-8.

Можно подключиться к СУБД MySQL и проверить кодировку таблиц без phpMyAdmin. Для этого:

mysql -u root -p

Если вы забыли имя базы данных, то выполните команду:

SHOW DATABASES;

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

USE information_schema;

Если вы забыли имя таблиц, выполните:

SHOW TABLES;

Далее выполните команду, в которой имя_таблицы замените на настоящее имя таблицы:

SHOW FULL COLUMNS FROM имя_таблицы;

Например:

SHOW FULL COLUMNS FROM GLOBAL_STATUS;

Вы увидите примерно следующее:

Смотрите столбец Collation. В моём случае там utf8_general_ci, это, как и utf8_unicode_ci, кодировка UTF-8. Кстати, если вы не знаете в чём разница между кодировками utf8_general_ci, utf8_unicode_ci, utf8mb4_general_ci, utf8mb4_unicode_ci, а также какую кодировку выбрать для базы данных MySQL, то посмотрите эту статью.

Теперь, когда мы узнали кодировку (в моём случае это UTF-8), то при каждом подключении к СУБД MySQL нужно выполнять последовательно запросы:

SET NAMES UTF8
SET CHARACTER SET UTF8
SET character_set_client = UTF8
SET character_set_connection = UTF8
SET character_set_results = UTF8

В PHP это можно сделать примерно так:

$this->mysqli = new mysqli($server, $username, $password, $basename);
if ($this->mysqli->connect_error) {
            $this->errorHandler_c->logError(1, 'Connect Error (' . $this->mysqli->connect_errno . ') ' . $this->mysqli->connect_error, $_SERVER );
}
$this->mysqli->query("SET NAMES UTF8");
$this->mysqli->query("SET CHARACTER SET UTF8");
$this->mysqli->query("SET character_set_client = UTF8");
$this->mysqli->query("SET character_set_connection = UTF8");
$this->mysqli->query("SET character_set_results = UTF8");

Обратите внимание, что UTF8 вам нужно заменить на ту кодировку, которая используется для ваших таблиц.

Важность кодировки

Поскольку кодирование и декодирование входной строки зависит от формата, мы должны быть осторожны при этих операциях. Если мы используем неправильный формат, это приведет к неправильному выводу и может вызвать ошибки.

Первое декодирование неверно, так как оно пытается декодировать входную строку, которая закодирована в формате UTF-8. Второй правильный, поскольку форматы кодирования и декодирования совпадают.

a = 'This is a bit möre cömplex sentence.'

print('Original string:', a)

# Encoding in UTF-8
encoded_bytes = a.encode('utf-8', 'replace')

# Trying to decode via ASCII, which is incorrect
decoded_incorrect = encoded_bytes.decode('ascii', 'replace')
decoded_correct = encoded_bytes.decode('utf-8', 'replace')

print('Incorrectly Decoded string:', decoded_incorrect)
print('Correctly Decoded string:', decoded_correct)

Вывод

Original string: This is a bit möre cömplex sentence.
Incorrectly Decoded string: This is a bit m��re c��mplex sentence.
Correctly Decoded string: This is a bit möre cömplex sentence.

Переход к Unicode

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

В результате в октябре 1991 года появилась первая версия одной общей таблицы символов, названной Unicode. Она включала в себя на тот момент 7161 различный символ из 24 письменностей мира.

В Unicode постепенно добавлялись новые языки и символы. Например, в версию 1.0.1 в середине 1992 года добавили более 20 000 идеограмм китайского, японского и корейского языков. В актуальной на текущий момент версии содержится уже более 143 000 символов.

Неправильная кодировка HTML страниц

Создадим тестовый файлик:

sudo gedit /var/www/html/encoding.html

Скопируем в него следующий HTML код, в котором отсутствует указание кодировки и посмотрим, какие проблемы могут с ним возникнуть и как их решить:

<html>
  <head>
    <title>Проверка кодировки</title>
   </head>
  <body>
    <h1>Тестовый файл для проверки кодировки</h1>
  </body>
</html>

Откроем этот файл в браузере http://localhost/encoding.html

Как можно видеть, кодировка браузером определена неправильно:

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

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

Добавим эту строку к нашему тестовому файлику, чтобы получилось так:

<html>
  <head>
    <title>Проверка кодировки</title>
    <meta http-equiv="content-type" content="text/html; charset=utf-8" />
   </head>
  <body>
    <h1>Тестовый файл для проверки кодировки</h1>
  </body>
</html>

Как мы можем убедиться на следующем скриншоте, проблема решена:

Если кодировка вашего файла отличается от UTF-8, то вместо неё поставьте windows-1251 или ту, которая соответствует кодировке веб-страницы. Чтобы научиться определять кодировку файлов, посмотрите эту инструкцию.

Это был самый простой способ исправления проблемы с кодировкой – без изменения настроек сервера.

Вернём наш тестовый файл в исходное состояние и продолжим изучение способов указания кодировки.

Если файлы .htaccess включены настройками Apache, то эти файлы можно использовать чтобы указывать кодировку отправляемых веб-сервером страниц. Чтобы включить поддержку файлов .htaccess в конфигурационном файле Apache ( /etc/apache2/apache2.conf ) найдите группу строк

<Directory /var/www/>
	Options Indexes FollowSymLinks
	AllowOverride None
	Require all granted
</Directory>

И в ней замените

AllowOverride None

на

AllowOverride All

После этого сервер нужно перезапустить.

sudo systemctl restart apache2.service

Файл .htaccess должен быть размещён в той же директории, что и сайт. Мой сайт размещён в корневой директории веб-сервера. Если у вас также, то теперь в папке /var/www/html/ создайте файл .htaccess и добавьте в него директиву AddDefaultCharset после которой укажите желаемую кодировку. Примеры

AddDefaultCharset UTF-8

ИЛИ

AddDefaultCharset windows-1251

Можно указать кодировку, которая будет применена только к файлам определённого формата:

AddCharset utf-8 .atom .css .js .json .rss .vtt .xml

Набор файлов может быть любым, например:

AddCharset utf-8 .html .css .php .txt .js

Следующий вариант является альтернативным и также позволяет устанавливать кодировку для файлов определённого типа, для него нужно, чтобы был включён mod_headers:

<Files ~ "\.html?$">  
     Header set Content-Type "text/html; charset=utf-8"
</Files>

Ещё один вариант, который также можно использовать в файле .htaccess для установки кодировки UTF-8:

IndexOptions +Charset=utf-8

Если сайт на PHP, то дополнительно может понадобиться продублировать кодировку с php_value default_charset:

AddDefaultCharset windows-1251
php_value default_charset "cp1251"

Можно вместо создания файла .htaccess установить кодировку в конфигурационном файле веб-сервера. Для Apache CentOS/Fedora это файл httpd.conf, а на Debian/Ubuntu это файл apache2.conf. Добавьте следующую строку для установки кодировки и перезапустите веб-сервер, чтобы изменения вступили в силу:

AddDefaultCharset UTF-8

Структура URL

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

  • схема — определяет тип интернет-сервиса (наиболее распространенным является HTTP или HTTPS)
  • логин — имя пользователя, используемое для доступа к ресурсу
  • пароль — пароль указанного пользователя
  • хост — полностью прописанное доменное имя хоста в системе DNS или IP-адрес хоста в форме четырёх групп десятичных чисел, разделённых точками (например, wm-school.ru)
  • порт — определяет номер порта на хосте (по умолчанию для HTTP является 80)
  • URL-путь — определяет путь на сервере (если пропущен: корневой каталог сайта)
  • параметры — строка запроса с передаваемыми на сервер (методом GET) параметрами. Начинается с символа , разделитель параметров — знак . Пример:
  • якорь — идентификатор «якоря» с предшествующим символом диез . Якорем может быть указан заголовок внутри документа или атрибут id элемента. По такой ссылке браузер откроет страницу и переместит окно к указанному элементу. Например, ссылка на этот раздел статьи: .

Стандарт URL использует набор символов ASCII.
Кодирование в URL заменяет небезопасные символы ASCII на символ «%» и следующие две шестнадцатеричные цифры соответствующего значения в наборе символов ISO-8859-1.
C момента своего изобретения и по сей день стандарт URL обладает серьёзным недостатком — в нём можно использовать только ограниченный набор символов: латинские буквы, цифры и лишь некоторые знаки пунктуации. Все другие символы необходимо перекодировать.
Например, перекодироваться должны буквы кириллицы, буквы с диакритическими знаками, лигатуры, иероглифы.
Перекодирующая кодировка называется URL-encoding, URLencoded или percent‐encoding.
URL-адреса не могут содержать пробелы. Кодирование URL-адрес, как правило заменяет каждый пробел знаком плюс (+), или %20. Символы кириллицы URL кодирование заменяет на соответствующие комбинации % и код символа.

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

кодируется как:

Преобразование происходит в два этапа: сначала каждый символ кириллицы кодируется в UTF-8 в последовательность из двух байтов, а затем каждый байт этой последовательности записывается в шестнадцатеричном представлении с предшествующим знаком процента (%):

К → D0 и 9C → %d0%9a
о → D0 и B8 → %d0%be
д → D0 и BA → %d0%b4
и → D1 и 80 → %d0%b8, и т. д.

URL-коды символов UTF-8 представлены в Таблице URL кодов символов UTF-8
URL-коды специальных управляющих символов таблицы ASCII (диапазон 00-31, плюс 127), символов ISO-Latin (диапазон 128-255), зарезервированных символов (знак доллара, амперсанд, плюс, слэш, двоеточие, точка с запятой, знак равенства, знак вопроса, знак эт (собака)), небезопасных символов (пробел, кавычки, знак меньше, знак больше, знак диез, знак проценты, фигурные скобки, прямой слэш, обратный слэш, тильда, квдратные скобки, гравис) представлены в Таблице символов кодирования URL

Резюме

  • Кодировка — это соответствие между визуальными символами и числами.
  • Кодировки необходимы, так как компьютеры созданы для работы с числами и не понимают текст.
  • До 1990-х годов не существовало единой кодировки, это приводило к тому, что текст, написанный в одной кодировке, становится совершенно нечитаемым на других.
  • Unicode — единый стандарт кодирования символов. Развитие интернета и необходимость обмена большим количеством текстовой информации приводило к тому, что сейчас все пользуются этим стандартом.
  • UTF-8, UTF-16, UTF-32 и т.п. — это варианты кодировок, основанные на Unicode. Отличаются они тем, что по-разному хранят информацию.
  • UTF-8 — самая популярная кодировка. Особенность её в том, что самые популярные символы кодируются 1-2 байтами, а редко встречающиеся занимают 3-4 байта. Это приводит к существенной экономии памяти, например, при работе с английским текстом.

Ильнар Шафигуллин

История создания

До появления Unicode UTF-8 широко использовались другие кодировки (ASCII, ISO/IEC 646, ISO/IEC 8859, KOI8, Windows-125x).

Впервые кодировка UTF-8 была официально представлена на конференции USENIX в Сан Диего в январе 1993. От других мультибайтных кодировок ее отличала полная совместимость с ASCII: все символы ASCII в UTF-8 кодируются 7 битами. Каждый символ кодировки, отличный от ASCII, состоит из ведущего байта, указывающего длину последовательности, и одного или нескольких продолжающих байт. Такой принцип позволяет определить длину последовательности только по первому байту. Коды символов ASCII, ведущих и продолжающих байт не пересекаются, что позволяет легко найти начало последовательности простым откатом назад максимум на пять байт.

График изменения популярности кодировок в интернете

В ноябре 2003 года стандартом RFC-3629 максимальная длина последовательности UTF-8 была ограничена четырьмя байтами, однако потенциально UTF-8 позволяет использовать последовательности вплоть до шести байт.
На сегодняшний день самой распространенной кодировкой является UTF-8. Она включает в себя более двух миллионов символов: все возможные современные алфавиты, цифры, знаки препинания, математические и специальные символы, музыкальные знаки и символы вымерших форм письменности. А резерва UTF-8 хватит для размещения более двух миллиардов символов. Так что о смене кодировки в ближайшее время задумываться не придётся.

Однако торжество современных технологий — явление относительно новое. Согласно Google, самой распространенной в интернете кодировкой UTF-8 стала только в 2008 году — тогда ее использовали чуть более чем 25% проиндексированных веб-страниц. А еще в 2006 UTF-8 использовали менее чем 10% веб-страниц.

Стремительный рост популярности кодировки UTF-8 связан с целым рядом ее преимуществ перед предшественницами.

Кодировки на основе Unicode

Unicode можно себе представить как огромную таблицу символов. В памяти компьютера записываются не сами символы, а номера из таблицы. Записывать их можно разными способами. Именно для этого на основе Unicode разработаны несколько кодировок, которые отличаются способом записи номера символа Unicode в виде набора байт. Они называются UTF — Unicode Transformation Format. Есть кодировки постоянной длины, например, UTF-32, в которой номер любого символа из таблицы Unicode занимает ровно 4 байта. Однако наибольшую популярность получила UTF-8 — кодировка с переменным числом байт. Она позволяет кодировать символы так, что наиболее распространённые символы занимают 1-2 байта, и только редко встречающиеся символы могут использовать по 4 байта. Например, все символы таблицы ASCII занимают ровно по одному байту, поэтому текст, написанный на английском языке с использованием кодировки UTF-8, будет занимать столько же места, как и текст, написанный с использованием таблицы символов ASCII.

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

Группа значений атрибута NAME

«keywords» (ключевые слова)

Keywords поисковые системы используют для того, чтобы определить релевантность страницы тому или иному запросу. При формировании данного значения необходимо использовать только те слова, которые обязательно встречаются в самом документе. Использование тех слов, которых нет на странице, не рекомендуется. Ключевые слова нужно добавлять по одному, через запятую, в единственном числе. Рекомендованное количество слов в «keywords» — не более десяти. Кроме того, выявлено, что разбивка этого значения на несколько строк влияет на оценку ссылки поисковыми машинами. Некоторые поисковые системы не индексируют сайты, в которых в значении «keywords» повторяется одно и то же слово для увеличения позиции в списке результатов.

Если раньше «keywords» имел определённую роль в ранжировании сайта, то в последнее время поисковые системы относятся к нему нейтрально.

HTML-код с «keywords»:

«description» (описание страницы)

Description используется при создании краткого описания конкретной страницы Вашего сайта. Практически все поисковые системы учитывают его при индексации, а также при создании аннотации в выдаче по запросу. При отсутствии «description» поисковые системы выдают в аннотации первую строку документа или отрывок, содержащий ключевые слова. Отображается после ссылки при поиске страниц в поисковике, поэтому желательно не просто указывать краткое описание документа, но сделать его содержание привлекательным рекламным сообщением.

Таким образом, правильный description обязательно должен содержать ключевое слово, коротко и точно описывать то, о чём данная веб-страница. «Description» вместе с «title» образуют очень важную пару значений, от которых зависит то, перейдёт пользователь из поисковой выдачи на веб-страницу или нет! Поэтому «description» и «title» нужно прописывать для каждой веб-страницы!

HTML-код с «description»:

«Author» и «Copyright»

Эти значения, как правило, не используются одновременно. Функция author и copyright — идентификация автора или принадлежности контента на странице. «Author» содержит имя автора веб-страницы, но в случае, если веб-сайт принадлежит какой-либо организации, целесообразнее использовать значение «Copyright».

HTML-код с «author»:

«Robots»

Robots — формирует информацию о гипертекстовых документах, которая поступает к роботам поисковых систем.

У «robots» могут быть следующие значения:

  • index — страница должна быть проиндексирована;
  • noindex — страница не индексируется;
  • follow — гиперссылки на странице учитываются;
  • nofollow — гиперссылки на странице не учитываются
  • all — включает значения index и follow, включен по умолчанию;
  • none — включает значения noindex и nofollow.

HTML-код с «robots»:

Базы банных

Когда речь идет о php, все вообще страшно. Я уже рассказывал про базы данных, они используются для ускорения работы сайта. Обычно, вы к ним не обращаетесь, но когда появляется необходимость в переносе сайта становится не по себе.

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

Пока не нужен перенос все работает и функционирует, хоть и не совсем правильно. Но после переезда начинаются неприятности. В идеале вы должны использовать либо только УТФ, либо виндовс-1251, но по факту всегда и у всех случаются вот такие недочеты.

Чтобы расшифровка согласовалась необходимо вписать код mysql_query(«SET NAMES cp1251»). В этом случае преобразование будет осуществлять по другому протоколу – cp1251.

Range: Decimal 688-767. Hex 02B0-02FF.

If you want any of these characters displayed in HTML, you can use the HTML entity found in the table below.

If the character does not have an HTML entity, you can use the decimal (dec) or hexadecimal (hex) reference.

Will display as:

I will display a
I will display ʰ
I will display aʰ

Older browsers may not support all the HTML5 entities in the table below.
Chrome and Opera have good support, and IE 11+ and Firefox 35+ support all the entities.

Char Dec Hex Entity Name
ʰ 688 02B0   MODIFIER LETTER SMALL H
ʱ 689 02B1   MODIFIER LETTER SMALL H WITH HOOK
ʲ 690 02B2   MODIFIER LETTER SMALL J
ʳ 691 02B3   MODIFIER LETTER SMALL R
ʴ 692 02B4   MODIFIER LETTER SMALL TURNED R
ʵ 693 02B5   MODIFIER LETTER SMALL TURNED R WITH HOOK
ʶ 694 02B6   MODIFIER LETTER SMALL CAPITAL INVERTED R
ʷ 695 02B7   MODIFIER LETTER SMALL W
ʸ 696 02B8   MODIFIER LETTER SMALL Y
ʹ 697 02B9   MODIFIER LETTER PRIME
ʺ 698 02BA   MODIFIER LETTER DOUBLE PRIME
ʻ 699 02BB   MODIFIER LETTER TURNED COMMA
ʼ 700 02BC   MODIFIER LETTER APOSTROPHE
ʽ 701 02BD   MODIFIER LETTER REVERSED COMMA
ʾ 702 02BE   MODIFIER LETTER RIGHT HALF RING
ʿ 703 02BF   MODIFIER LETTER LEFT HALF RING
ˀ 704 02C0   MODIFIER LETTER GLOTTAL STOP
ˁ 705 02C1   MODIFIER LETTER REVERSED GLOTTAL STOP
˂ 706 02C2   MODIFIER LETTER LEFT ARROWHEAD
˃ 707 02C3   MODIFIER LETTER RIGHT ARROWHEAD
˄ 708 02C4   MODIFIER LETTER UP ARROWHEAD
˅ 709 02C5   MODIFIER LETTER DOWN ARROWHEAD
ˆ 710 02C6 &circ; MODIFIER LETTER CIRCUMFLEX ACCENT
ˇ 711 02C7   CARON
ˈ 712 02C8   MODIFIER LETTER VERTICAL LINE
ˉ 713 02C9   MODIFIER LETTER MACRON
ˊ 714 02CA   MODIFIER LETTER ACUTE ACCENT
ˋ 715 02CB   MODIFIER LETTER GRAVE ACCENT
ˌ 716 02CC   MODIFIER LETTER LOW VERTICAL LINE
ˍ 717 02CD   MODIFIER LETTER LOW MACRON
ˎ 718 02CE   MODIFIER LETTER LOW GRAVE ACCENT
ˏ 719 02CF   MODIFIER LETTER LOW ACUTE ACCENT
ː 720 02D0   MODIFIER LETTER TRIANGULAR COLON
ˑ 721 02D1   MODIFIER LETTER HALF TRIANGULAR COLON
˒ 722 02D2   MODIFIER LETTER CENTRED RIGHT HALF RING
˓ 723 02D3   MODIFIER LETTER CENTRED LEFT HALF RING
˔ 724 02D4   MODIFIER LETTER UP TACK
˕ 725 02D5   MODIFIER LETTER DOWN TACK
˖ 726 02D6   MODIFIER LETTER PLUS SIGN
˗ 727 02D7   MODIFIER LETTER MINUS SIGN
˘ 728 02D8   BREVE
˙ 729 02D9   DOT ABOVE
˚ 730 02DA   RING ABOVE
˛ 731 02DB   OGONEK
˜ 732 02DC &tilde; SMALL TILDE
˝ 733 02DD   DOUBLE ACUTE ACCENT
˞ 734 02DE   MODIFIER LETTER RHOTIC HOOK
˟ 735 02DF   MODIFIER LETTER CROSS ACCENT
ˠ 736 02E0   MODIFIER LETTER SMALL GAMMA
ˡ 737 02E1   MODIFIER LETTER SMALL L
ˢ 738 02E2   MODIFIER LETTER SMALL S
ˣ 739 02E3   MODIFIER LETTER SMALL X
ˤ 740 02E4   MODIFIER LETTER SMALL REVERSED GLOTTAL STOP
˥ 741 02E5   MODIFIER LETTER EXTRA-HIGH TONE BAR
˦ 742 02E6   MODIFIER LETTER HIGH TONE BAR
˧ 743 02E7   MODIFIER LETTER MID TONE BAR
˨ 744 02E8   MODIFIER LETTER LOW TONE BAR
˩ 745 02E9   MODIFIER LETTER EXTRA-LOW TONE BAR
˪ 746 02EA   MODIFIER LETTER YIN DEPARTING TONE MARK
˫ 747 02EB   MODIFIER LETTER YANG DEPARTING TONE MARK
ˬ 748 02EC   MODIFIER LETTER VOICING
˭ 749 02ED   MODIFIER LETTER UNASPIRATED
ˮ 750 02EE   MODIFIER LETTER DOUBLE APOSTROPHE
˯ 751 02EF   MODIFIER LETTER LOW DOWN ARROWHEAD
˰ 752 02F0   MODIFIER LETTER LOW UP ARROWHEAD
˱ 753 02F1   MODIFIER LETTER LOW LEFT ARROWHEAD
˲ 754 02F2   MODIFIER LETTER LOW RIGHT ARROWHEAD
˳ 755 02F3   MODIFIER LETTER LOW RING
˴ 756 02F4   MODIFIER LETTER MIDDLE GRAVE ACCENT
˵ 757 02F5   MODIFIER LETTER MIDDLE DOUBLE GRAVE ACCENT
˶ 758 02F6   MODIFIER LETTER MIDDLE DOUBLE ACUTE ACCENT
˷ 759 02F7   MODIFIER LETTER LOW TILDE
˸ 760 02F8   MODIFIER LETTER RAISED COLON
˹ 761 02F9   MODIFIER LETTER BEGIN HIGH TONE
˺ 762 02FA   MODIFIER LETTER END HIGH TONE
˻ 763 02FB   MODIFIER LETTER BEGIN LOW TONE
˼ 764 02FC   MODIFIER LETTER END LOW TONE
˽ 765 02FD   MODIFIER LETTER SHELF
˾ 766 02FE   MODIFIER LETTER OPEN SHELF
˿ 767 02FF   MODIFIER LETTER LOW LEFT ARROW

❮ Previous
Next ❯

Range: Decimal 768-879. Hex 0300-036F.

If you want any of these characters displayed in HTML, you can use the HTML entity found in the table below.

If the character does not have an HTML entity, you can use the decimal (dec) or hexadecimal (hex) reference.

Will display as:

I will display a
I will display ̃
I will display ã

Older browsers may not support all the HTML5 entities in the table below.
Chrome and Opera have good support, and IE 11+ and Firefox 35+ support all the entities.

Char Dec Hex Entity Name
768 0300   GRAVE ACCENT
769 0301   ACUTE ACCENT
770 0302   CIRCUMFLEX ACCENT
771 0303   TILDE
772 0304   MACRON
773 0305   OVERLINE
774 0306   BREVE
775 0307   DOT ABOVE
776 0308   DIAERESIS
777 0309   HOOK ABOVE
778 030A   RING ABOVE
779 030B   DOUBLE ACUTE ACCENT
780 030C   CARON
781 030D   VERTICAL LINE ABOVE
782 030E   DOUBLE VERTICAL LINE ABOVE
783 030F   DOUBLE GRAVE ACCENT
784 0310   CANDRABINDU
785 0311   INVERTED BREVE
786 0312   TURNED COMMA ABOVE
787 0313   COMMA ABOVE
788 0314   REVERSED COMMA ABOVE
789 0315   COMMA ABOVE RIGHT
790 0316   GRAVE ACCENT BELOW
791 0317   ACUTE ACCENT BELOW
792 0318   LEFT TACK BELOW
793 0319   RIGHT TACK BELOW
794 031A   LEFT ANGLE ABOVE
795 031B   HORN
796 031C   LEFT HALF RING BELOW
797 031D   UP TACK BELOW
798 031E   DOWN TACK BELOW
799 031F   PLUS SIGN BELOW
800 0320   MINUS SIGN BELOW
801 0321   PALATALIZED HOOK BELOW
802 0322   RETROFLEX HOOK BELOW
803 0323   DOT BELOW
804 0324   DIAERESIS BELOW
805 0325   RING BELOW
806 0326   COMMA BELOW
807 0327   CEDILLA
808 0328   OGONEK
809 0329   VERTICAL LINE BELOW
810 032A   BRIDGE BELOW
811 032B   INVERTED DOUBLE ARCH BELOW
812 032C   CARON BELOW
813 032D   CIRCUMFLEX ACCENT BELOW
814 032E   BREVE BELOW
815 032F   INVERTED BREVE BELOW
816 0330   TILDE BELOW
817 0331   MACRON BELOW
818 0332   LOW LINE
819 0333   DOUBLE LOW LINE
820 0334   TILDE OVERLAY
821 0335   SHORT STROKE OVERLAY
822 0336   LONG STROKE OVERLAY
823 0337   SHORT SOLIDUS OVERLAY
824 0338   LONG SOLIDUS OVERLAY
825 0339   RIGHT HALF RING BELOW
826 033A   INVERTED BRIDGE BELOW
827 033B   SQUARE BELOW
828 033C   SEAGULL BELOW
829 033D   X ABOVE
830 033E   VERTICAL TILDE
o̿ 831 033F   DOUBLE OVERLINE
832 0340   GRAVE TONE MARK
833 0341   ACUTE TONE MARK
834 0342   GREEK PERISPOMENI (combined with theta)
835 0343   GREEK KORONIS (combined with theta)
836 0344   GREEK DIALYTIKA TONOS (combined with theta)
837 0345   GREEK YPOGEGRAMMENI (combined with theta)
838 0346   BRIDGE ABOVE
839 0347   EQUALS SIGN BELOW
840 0348   DOUBLE VERTICAL LINE BELOW
841 0349   LEFT ANGLE BELOW
842 034A   NOT TILDE ABOVE
843 034B   HOMOTHETIC ABOVE
844 034C   ALMOST EQUAL TO ABOVE
845 034D   LEFT RIGHT ARROW BELOW
846 034E   UPWARDS ARROW BELOW
847 034F   GRAPHEME JOINER
848 0350   RIGHT ARROWHEAD ABOVE
849 0351   LEFT HALF RING ABOVE
850 0352   FERMATA
851 0353   X BELOW
852 0354   LEFT ARROWHEAD BELOW
853 0355   RIGHT ARROWHEAD BELOW
854 0356   RIGHT ARROWHEAD AND UP ARROWHEAD BELOW
855 0357   RIGHT HALF RING ABOVE
856 0358   DOT ABOVE RIGHT
857 0359   ASTERISK BELOW
858 035A   DOUBLE RING BELOW
859 035B   ZIGZAG ABOVE
͜o 860 035C   DOUBLE BREVE BELOW
͝o 861 035D   DOUBLE BREVE
͞o 862 035E   DOUBLE MACRON
͟o 863 035F   DOUBLE MACRON BELOW
͠o 864 0360   DOUBLE TILDE
͡o 865 0361   DOUBLE INVERTED BREVE
͢o 866 0362   DOUBLE RIGHTWARDS ARROW BELOW
867 0363   LATIN SMALL LETTER A
868 0364   LATIN SMALL LETTER E
869 0365   LATIN SMALL LETTER I
870 0366   LATIN SMALL LETTER O
871 0367   LATIN SMALL LETTER U
872 0368   LATIN SMALL LETTER C
873 0369   LATIN SMALL LETTER D
874 036A   LATIN SMALL LETTER H
875 036B   LATIN SMALL LETTER M
876 036C   LATIN SMALL LETTER R
877 036D   LATIN SMALL LETTER T
878 036E   LATIN SMALL LETTER V
879 036F   LATIN SMALL LETTER X

❮ Previous
Next ❯

Is it a ranking factor for SEO?

The character set is not a ranking factor for search engine optimization. Most search engines focus on the important goal of delivering relevant, useful content to those who seek it and as such does not consider other outside factors that do not contribute to that goal.

So your character set matters because of how you transmit information but search engines are not interested in it. Using other charsets apart from Utf-8 will not decrease your SEO ranking because to a large extent it doesn’t matter what character encoding you use as long as the search engine is able to get information to the end users.

Немного теории

Любой документ на компьютере или в интернете, как я уже сказал, хранится в виде двоичного кода. К примеру, если вы используете кодировку ASCII, то буква «К» будет записана как 10001010, а windows 1251 под этим числом скрывается символ – Љ. В итоге, если браузер или программа обратится к другой таблице и считает вместо ASCII коды windows 1251, то читатель увидит совершенно непонятные ему символ.

Логичен вопрос, нафига было придумывать множество таблиц с кодами? Дело в том, что помимо русского алфавита существует еще и английский, немецкий, китайский. По некоторым подсчетам, существует около 200 000 символов. Хотя, я не очень доверяю этой статистике, вспоминая про японский.

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

Чем больше в таблице символов, тем длиннее код каждого из них, а значит и вес документа становится больше.

Представьте, если бы одна книга весила 4 Гб! Она бы очень долго загружалась, занимала все свободное место на компьютере. Решение о скачивании представлялось бы делом нелегким.

Если вспомнить о сайтах, то вообще страшно подумать, что бы произошло. Каждая страничка открывалась даже на скоростном оптоволокне по часу с лишним! Думаю, мобильные телефоны можно было бы смело выкидывать. Пользоваться ими на улице даже с 4G? Сомневаюсь.

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

Microsoft, к примеру, для русскоязычного сегмента создали windows-1251. В ней, конечно же, есть свои достоинства и недостатки. Как и у любого другого продукта.

Сейчас уже, лишь 2% всех страниц в интернете написано на 1251. Большинство веб-мастеров используют UTF-8. Почему так?

description (краткое описание)

Значение description используется для краткого описания содержимого, расположенного на текущей странице. Рекомендуемая максимальная длина такого описания не должна превышать 180 символов:

<meta name="description" content="Описание содержимого на данной странице">

Краткое описание страницы может быть использовано поисковыми система на странице с результатами поиска под названием страницы и URL-адреса:

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

При составлении краткого описания следует учитывать следующие моменты:

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

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

keywords (ключевые слова)

У любого сайта есть набор ключевых слов и словосочетаний, по которым поисковые системы ищут нужные ресурсы в сети. Именно эти слова и должны составлять содержимое keywords.

Самый простой способ подобрать нужные ключевые слова для текущей страницы — это определить по каким словам вы сами стали бы искать материал, представленный на ней? Вот это и будут нужные ключевые слова. Пример:

<meta name="keywords" content="мета тег, meta, метаданные, keywords, description">

Ключевые слова указываются через запятую или пробел и могут быть написаны в любом регистре. Рекомендуется указывать не более 10-15 ключевых слов или словосочетаний.

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector