Использование символов Юникода в URL - PullRequest
1 голос
/ 05 августа 2020

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

Но недавно я видел несколько сайтов, использующих собственные буквы в URL-адресах (кроме домена).

Что-то вроде этого, например, с использованием spani sh буквы с диакритическими знаками:

https://www.example.com/esta-es-una-frase-en-español
https://www.example.com/cómo-usar-acentos-y-la-letra-ñ-en-urls

Кроме того, я видел такие URL-адреса, как

https://www.example.com/урл-на-български

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

Но теперь вы можете использовать этот тип URL-адреса в браузере, и это не создает проблем, а буквы отображаются так, как должны (не в URL-кодировке).

Можно ли предположить, что теперь мои URL-адреса могут обрабатывать эти символы?

Кроме того, есть ли какая-либо разница в плане индексации URL-адресов для Google?

1 Ответ

0 голосов
/ 06 августа 2020

URI / URL-адреса, как определено RF C 3986 «Uniform Resource Identifier (URI): Generi c Syntax» , не допускайте незакодированных не-ASCII символов . Такие символы должны быть закодированы кодировкой (обычно в UTF-8), а результирующие байтовые октеты затем закодированы в процентах. Если браузеру дается URL-адрес с незакодированными символами Unicode в нем, браузер обычно правильно закодирует URL-адрес за кулисами при передаче на веб-сервер. Вы можете проверить это с помощью встроенного отладчика вашего браузера (если он есть) или сниффера HTTP / S.

IRI, как определено RF C 3987 "Интернационализированные идентификаторы ресурсов (IRI) ", разрешить незакодированные символы Unicode. IRI пока не получили широкого распространения, однако IRI могут поддерживать обратную совместимость путем сопоставления с / из закодированных URI / URL-адресов. Возможно, ваш браузер обрабатывает содержимое адресной строки как IRI, при необходимости конвертируя его в / из URI / URL-адреса.

...