Кодировка URL Ссылки в HTML ASCII UTF-8 Windows-1252

HTML5CSS.ru

ЛУЧШИЙ САЙТ ДЛЯ РАЗРАБОТЧИКОВ

❮ Назад Дальше ❯


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


URL-унифицированный локатор ресурсов

Веб-обозреватели запрашивают страницы с веб-серверов с помощью URL-адреса.

URL-адрес веб-страницы, например: https://html5css.ru.


Кодировка URL (процентная кодировка)

URL-адреса можно отправлять только через Интернет с помощью Набор символов ASCII.

Поскольку URL-адреса часто содержат символы вне набора ASCII, URL-адрес должен быть преобразован в допустимый формат ASCII.

Кодировка URL заменяет небезопасные символы ASCII на «%», за которыми следуют две шестнадцатеричные цифры.

URL-адреса не могут содержать пробелы. Кодировка URL обычно заменяет пробел со знаком плюса (+) или с %20.


Ссылка кодировки ASCII

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

Набор символов по умолчанию в HTML5 — UTF-8.

СимволДля Windows-1252Для UTF-8
Пробел
%20
%20
!%21%21
«%22%22
#%23%23
$%24%24
%%25%25
&%26%26
%27%27
(%28%28
)%29%29
*%2A%2A
+%2B%2B
,%2C%2C
%2D%2D
.%2E%2E
/%2F%2F
0%30%30
1%31%31
2%32%32
3%33%33
4%34%34
5%35%35
6%36%36
7%37%37
8%38%38
9%39%39
:%3A%3A
;%3B%3B
<%3C%3C
=%3D%3D
>%3E%3E
?%3F%3F
@%40%40
A%41%41
B%42%42
C%43%43
D%44%44
E%45%45
F%46%46
G%47%47
H%48%48
I%49%49
J%4A%4A
K%4B%4B
L%4C%4C
M%4D%4D
N%4E%4E
O%4F%4F
P%50%50
Q%51%51
R%52%52
S%53%53
T%54%54
U%55%55
V%56%56
W%57%57
X%58%58
Y%59%59
Z%5A%5A
[%5B%5B
\%5C%5C
]%5D%5D
^%5E%5E
_%5F%5F
`%60%60
a%61%61
b%62%62
c%63%63
d%64%64
e%65%65
f%66%66
g%67%67
h%68%68
i%69%69
j%6A%6A
k%6B%6B
l%6C%6C
m%6D%6D
n%6E%6E
o%6F%6F
p%70%70
q%71%71
r%72%72
s%73%73
t%74%74
u%75%75
v%76%76
w%77%77
x%78%78
y%79%79
z%7A%7A
{%7B%7B
|%7C%7C
}%7D%7D
~%7E%7E
 %7F%7F
`%80%E2%82%AC
%81%81
%82%E2%80%9A
ƒ%83%C6%92
%84%E2%80%9E
%85%E2%80%A6
%86%E2%80%A0
%87%E2%80%A1
ˆ%88%CB%86
%89%E2%80%B0
Š%8A%C5%A0
%8B%E2%80%B9
Œ%8C%C5%92
%8D%C5%8D
Ž%8E%C5%BD
%8F%8F
%90%C2%90
%91%E2%80%98
%92%E2%80%99
%93%E2%80%9C
%94%E2%80%9D
%95%E2%80%A2
%96%E2%80%93
%97%E2%80%94
˜%98%CB%9C
%99%E2%84
š%9A%C5%A1
%9B%E2%80
œ%9C%C5%93
%9D%9D
ž%9E%C5%BE
Ÿ%9F%C5%B8
 %A0%C2%A0
¡%A1%C2%A1
¢%A2%C2%A2
£%A3%C2%A3
¤%A4%C2%A4
¥%A5%C2%A5
¦%A6%C2%A6
§%A7%C2%A7
¨%A8%C2%A8
©%A9%C2%A9
ª%AA%C2%AA
«%AB%C2%AB
¬%AC%C2%AC
­%AD%C2%AD
®%AE%C2%AE
¯%AF%C2%AF
°%B0%C2%B0
±%B1%C2%B1
²%B2%C2%B2
³%B3%C2%B3
´%B4%C2%B4
µ%B5%C2%B5
%B6%C2%B6
·%B7%C2%B7
¸%B8%C2%B8
¹%B9%C2%B9
º%BA%C2%BA
»%BB%C2%BB
¼%BC%C2%BC
½%BD%C2%BD
¾%BE%C2%BE
¿%BF%C2%BF
À%C0%C3%80
Á%C1%C3%81
Â%C2%C3%82
Ã%C3%C3%83
Ä%C4%C3%84
Å%C5
%C3%85
Æ%C6%C3%86
Ç%C7%C3%87
È%C8%C3%88
É%C9%C3%89
Ê%CA%C3%8A
Ë%CB%C3%8B
Ì%CC%C3%8C
Í%CD%C3%8D
Î%CE%C3%8E
Ï%CF%C3%8F
Ð%D0%C3%90
Ñ%D1%C3%91
Ò%D2%C3%92
Ó%D3%C3%93
Ô%D4%C3%94
Õ%D5%C3%95
Ö%D6%C3%96
×%D7%C3%97
Ø%D8%C3%98
Ù%D9%C3%99
Ú%DA%C3%9A
Û%DB%C3%9B
Ü%DC%C3%9C
Ý%DD%C3%9D
Þ%DE%C3%9E
ß%DF%C3%9F
à%E0%C3%A0
á%E1%C3%A1
â%E2%C3%A2
ã%E3%C3%A3
ä%E4%C3%A4
å%E5%C3%A5
æ%E6%C3%A6
ç%E7%C3%A7
è%E8%C3%A8
é%E9%C3%A9
ê%EA%C3%AA
ë%EB%C3%AB
ì%EC%C3%AC
í%ED%C3%AD
î%EE%C3%AE
ï%EF%C3%AF
ð%F0%C3%B0
ñ%F1%C3%B1
ò%F2%C3%B2
ó%F3%C3%B3
ô%F4%C3%B4
õ%F5%C3%B5
ö%F6%C3%B6
÷%F7%C3%B7
ø%F8%C3%B8
ù%F9%C3%B9
ú%FA%C3%BA
û%FB%C3%BB
ü%FC%C3%BC
ý%FD%C3%BD
þ%FE%C3%BE
ÿ%FF%C3%BF

Ссылка кодировки URL

Символы управления ASCII

%00-%1F изначально были разработаны для управления аппаратными устройствами.

Управляющие символы не имеют ничего общего внутри URL.

ASCII СимволОписаниеURL Кодировка
NULнулевой символ%00
SOHНачало заголовка%01
STXначало текста%02
ETXконец текста%03
EOTконец передачи%04
ENQЗапрос%05
ACKПризнать%06
BELКолокол (кольцо)%07
BSBackspace%08
HTВкладка «по горизонтали»%09
LFЛиния подачи%0A
VTвертикальная вкладка%0B
FFформа подачи%0C
CRвозврат каретки%0D
SOсдвиг из%0E
SIсдвиг в%0F
DLEEscape-связь с данными%10
DC1Управление устройством 1
%11
DC2Управление устройством 2%12
DC3Управление устройством 3%13
DC4Управление устройством 4%14
NAKотрицательное признание%15
SYNСинхронизировать%16
ETBконцевой блок передачи%17
CANОтмена%18
EMконец среды%19
SUBЗамены%1A
ESCescape%1B
FSРазделитель файлов%1C
GSразделитель групп%1D
RSразделитель записей%1E
USСепаратор блока%1F

❮ Назад Дальше ❯

Популярное

html картинка
как вставить картинку в html
цвет текста фона
размер текста html
цвет размер шрифта html
формы html
список html
таблица html
как сделать ссылку в html
html элементы



Copyright 2018-2020 HTML5CSS. ru

Правила и Условия Политика конфиденциальности О нас Контакты

HTML кодирование и декодирование

Кодировщик символов в HTML коды

Выберите кодировку

UTF-8windows-1251KOI8-Rcp866ISO-8859-5ISO-8859-1

Введите строку в одно из полей и нажмите соответствующую кнопку

Строка в нормальном виде

Строка в закодированном виде


Кодирование символов, имеющих специальное назначение в html

Кодирование символов, для которых есть мнемонические имена в html

Кодирование всех символов
Исключая диапазон latin1

Побайтное представление (дамп)     HEXDECIMALBINARY

кодирование в base64

Основные возможности кодировщика

  • Выбор кодировки — нажатие на кнопку GO меняет кодировку страницы, но текст внутри окон: Cтрока в нормальнов виде и Cтрока в закодированном виде может меняться непредвиденным образом (вернее везде есть своя логика, но не совсем тревиальная). Это дает возможность насладиться разными «Крякозябрами», но может быть полезно и для перекодировки кириллицы. Будьте внимательны изменение в выпадающем списке кодировок не будут иметь силу, если кнопка GO не будет нажата.
  • Кодирование символов, имеющих специальное назначение в html — опция заменяет символы
    < > & » ‘ мнемоническими ссылками html, используется для безопасной вставки фрагмента html кода в виде текста в html страницу .
  • Кодирование символов, для которых есть мнемонические имена — опция заменяет все символы html, для которых определены мнемонические имена, их мнемоническими html ссылками, опция помогает быстро узнать название того или иного знака.
  • Кодирование всех символов — опция кодирует любые символы с помощью html ссылок с кодом символа (unicode). Так как отображение символов, заданных с помощью html ccылок одинаково, в любых кодировках, то эта опция позволяет получить кириллический текст, не зависящий от установок кодовой страницы браузера. Если будет нажат значок Исключая диапазон latin1, то ASCII символы кодироваться не будут (первые 127 символов диапазона UNICODE). Эта опция позволяет шифровать содержимое HTML, не нарушая разметку.
  • Побайтное представление — опция выдает байты строк, как в шестнадцатиричном представлении, так и в десятичном. Для мультибайтовой кодировки utf-8, каждый кириллический символ кодируется двумя байтами. Эта опция может быть полезна, для анализа строк и выявления неисправностей. Она совместима с режимом кодирования для URL.
  • Кодирование в base64 — опция применяется для кодирования в MIME base64.

Теоретические основы кодирования и комментарии к работе программы читайте в статье о принципах работы html кодировщика. Для просмотра начального диапазона символов Unicode (первые 64К) можно воспользоваться динамической таблицей символов блоков Unicode. Для изучения основ Unicode воспользуйтесь официальной документацией на Unicode (на английском).

Блог WHATWG — Дорога к HTML 5: кодировка символов

Марк Пилигрим, Google в учебниках

Добро пожаловать в мою полурегулярную колонку «Дорога к HTML 5», где я попытаюсь объяснить некоторые новые элементы, атрибуты и другие функции в предстоящей спецификации HTML 5.

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

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

На самом деле все сложнее. Многие символы являются общими для нескольких кодировок, но каждая кодировка может использовать другую последовательность байтов для фактического хранения этих символов в памяти или на диске. Таким образом, вы можете думать о кодировке символов как о своего рода ключе расшифровки текста. Всякий раз, когда кто-то дает вам последовательность байтов и утверждает, что это «текст», вам нужно знать, какую кодировку символов он использовал, чтобы вы могли декодировать байты в символы и отображать их (или обрабатывать их, или что-то еще).

— источник

И еще раз повторю свой стандартный набор справочных ссылок для тех из вас, кто ничего не знает о кодировке символов. Вы должны прочитать книгу Джоэла Спольски «Абсолютный минимум, который должен знать каждый разработчик программного обеспечения о Unicode и наборах символов (никаких оправданий!)» и «Символы против байтов» и все, что написано Мартином Дюрстом.

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

Итак, как ваш браузер на самом деле определяет кодировку символов потока байтов, который отправляет веб-сервер? Если вы знакомы с заголовками HTTP, возможно, вы видели такой заголовок:

.

Content-Type: text/html; набор символов = "utf-8"

Вкратце, это говорит о том, что веб-сервер думает, что отправляет вам HTML-документ, и что он считает, что документ использует кодировку символов UTF-8 . К сожалению, во всем великолепии всемирной паутины очень немногие авторы фактически имеют контроль над своим HTTP-сервером. Подумайте о Blogger: контент предоставляется отдельными лицами, но серверы находятся в ведении Google. Таким образом, HTML 4 предоставил способ указать кодировку символов в самом HTML-документе. Вы, наверное, тоже это видели:

Вкратце, это говорит о том, что веб-автор считает, что создал HTML-документ с использованием кодировки символов UTF-8 . Теперь вы можете легко представить себе ситуацию, когда оба сервера и предоставляют информацию о кодировании документа. Кроме того, они могут не совпадать (особенно если ими управляют разные люди). Так кто из них победит? Ну, есть порядок приоритета на случай, если документ подается с противоречивой информацией.

Вот что говорит HTML 4.01 о порядке приоритета для определения кодировки символов:

  1. Переопределение пользователя ( например, пользователь выбрал кодировку из меню в своем браузере).
  2. Параметр «charset» HTTP в поле «Content-Type».
  3. Объявление META с атрибутом «http-equiv», установленным на «Content-Type», и значением, установленным для «charset».
  4. Атрибут charset установлен для элемента, обозначающего внешний ресурс.
  5. Неопределенный эвристический анализ.

И вот что говорит об этом HTML 5. Я не буду цитировать все это здесь, достаточно сказать, что это 7-шаговый алгоритм; шаг 4 имеет 2 подэтапа, первый из которых имеет 7 ветвей, один из которых имеет 8 подэтапов, один из которых фактически связан с отдельным алгоритмом, который сам состоит из 7 шагов… Так продолжается некоторое время . Суть в том, что

  1. Переопределение пользователя.
  2. Параметр «charset» HTTP в поле «Content-Type».
  3. Знак порядка байтов перед любыми другими данными в самом HTML-документе.
  4. Объявление META с атрибутом «charset».
  5. Объявление META с атрибутом «http-equiv», установленным на «Content-Type», и значением, установленным для «charset».
  6. Неопределенный эвристический анализ.

…а потом…

  1. Нормализация заданной строки кодировки символов в соответствии с правилами сопоставления псевдонимов кодировок, определенными в Техническом стандарте Unicode № 22.
  2. Переопределить некоторые проблемные кодировки, т. е. преднамеренно обрабатывать некоторые кодировки, как если бы они были разными кодировками. Наиболее распространенным переопределением является обработка US-ASCII и ISO-8859-1 как Windows-1252 , но в этой таблице есть несколько других переопределений кодировки. Как отмечается в спецификации, «Требование рассматривать определенные кодировки как другие кодировки в соответствии с приведенной выше таблицей является умышленным нарушением спецификации модели символов W3C».

Здесь вам должны броситься в глаза две вещи. Во-первых, WTF — это атрибут ? Ну, это именно то, на что это похоже. Выглядит так:

<метакодировка=UTF-8>

Мне удалось найти лишь разрозненные обсуждения этого атрибута в списке рассылки WHATWG.

  • , март 2006 г .: Декларация кодировки символов в Интернете, в частности, этот пост Лахлана Ханта, в котором изложены требования к «прокладыванию коровьих троп» распространенных ошибок авторов.
  • , июнь 2007 г.: объявление внутренней кодировки символов, отбрасывание UTF-32, а также терминология UTF и BOM
  • .

Лучшее объяснение нового атрибута было дано несколько месяцев спустя в несвязанной ветке в отдельном списке рассылки. Эндрю Сидвелл объясняет:

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

(Есть даже несколько тестов , если вы не верите, что браузеры уже делают это. )

Во-вторых, кто, черт возьми, думает, что WHATWG указывает на «умышленное нарушение спецификации модели персонажа W3C»‽ Это справедливый вопрос. Как и в случае со многими подобными вопросами, ответ заключается в том, что HTML 5 лишь кодифицирует то, что уже делают браузеры. ИСО-8859-1 и Windows-1252 очень похожие кодировки. Единственное, чем они отличаются, — это так называемые «умные кавычки» и «фигурные апострофы» — довольно маленькие типографские завитки, которые любят авторы и которые Microsoft Word (и многие другие редакторы) выводят по умолчанию. Многие авторы указывают кодировку ISO-8559-1 или US-ASCII (потому что они скопировали эту часть своего шаблона откуда-то еще), но затем используют фигурные кавычки из кодировки Windows-1252. Эта ошибка настолько распространена, что браузеры уже обрабатывают ISO-8859.-1 как Windows-1252. HTML 5 просто «прокладывает коровьи тропы».

Подводя итог: кодировка символов сложна, и несколько десятилетий плохо написанного программного обеспечения, используемого авторами, обученными копировать и вставлять, не упростило ее. Вы должны всегда указывать кодировку символов для каждого HTML-документа, иначе произойдут плохие вещи. Вы можете сделать это сложным способом (заголовок HTTP Content-Type ), простым способом ( ), или по-новому ( атрибут ), но, пожалуйста, сделайте это. Сеть благодарит вас.

Эта неделя в HTML 5 — Эпизод 21 ↔ Эта Неделя День в HTML 5 — Эпизод 22

Как объявить кодировку символов HTML

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

Что означает «Кодировка символов не была объявлена»?

Ошибка JavaScript о том, что «кодировка символов документа HTML не была объявлена», указывает на то, что ваша страница может отображать искаженный текст. Эта ошибка чаще всего возникает при использовании браузеров Firefox или Google Chrome, когда не указан набор символов веб-сайта. Следовательно, браузер неправильно интерпретирует содержимое.

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

Что вызывает эту проблему?

Вот основные причины, по которым экран может предложить вам указать кодировку символов:

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

Как проверить проблему

Чтобы проверить, используете ли вы правильную кодировку, вы можете использовать специальные инструменты, такие как валидаторы, которые находят кодировку из заголовков HTTP. Однако этот метод не работает в 100% случаев; валидатор может запутаться, так как многие кодировки похожи. Существуют и другие программы и веб-сервисы, которые отображают заголовки HTTP, например Delorie HTTP Header Viewer. Там вы должны ввести URL-адрес документа и найти параметр charset.

Обнаружьте не только отсутствие кодировки символов на страницах, но и другие технические проблемы на вашем сайте!

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

Почему это важно?

Для правильного отображения страницы HTML или XML необходимо указать кодировку символов. Указав кодировку, вы помогаете поисковым системам понять данные, чтобы они могли правильно их интерпретировать. Без этого веб-браузер не будет знать, какой набор символов использовать. Также рекомендуется использовать объявления кодировок в заголовках HTTP вместе с объявлениями внутри документа. Это помогает тестировщику или разработчику проверить кодировку.

Если вы хотите узнать больше о кодировании символов и посмотреть, как это работает на примерах, вам может быть интересно посмотреть это видео Скотта Хансельмана.

Как решить проблему

Чтобы объявить кодировку вашего HTML-документа, вам нужно использовать метаэлемент с атрибутом charset. В случае использования WordPress вы найдете нужную строку, зайдя в «Панель управления»> «Внешний вид»> «Редактор тем». Там вам нужно найти файл header.php. Сразу после тега head вы увидите строку набора символов, в которую вам нужно добавить метаэлемент. Используйте Unicode UTF-8 и убедитесь, что ваш контент также сохранен как UTF-8.