Назад | Перейти на главную страницу

Действительно ли часть имени хоста в URL-адресах HTTP (S) нечувствительна к регистру?

Безопасно ли использовать http (s): //CompanyName.com/xyz в качестве URL-адреса (например, для целей брендинга) без каких-либо изменений в конфигурациях на стороне службы?

Я знаю, что в DNS не учитывается регистр, но могут ли быть побочные эффекты? Я думаю, например, о различные части цепочки не соответствуют CompanyName.com ~ companyname.com:

Кто-нибудь испытывал те или иные проблемы с заглавными буквами в части URL-адресов в имени хоста?


[править] @Michael Hampton указал, что, согласно стандартам HTTP, имя хоста не чувствительно к регистру, но некоторое программное обеспечение в этом отношении несовместимо.

Я пытаюсь понять, насколько распространено несовместимое программное обеспечение, в частности, у клиентов. Я предполагаю, что все последние основные браузеры в порядке, но что, например, о мобильных приложениях? (Может мне лучше выделить это в отдельный вопрос по научной фантастике?) [/ Edit]

Да, имя хоста действительно нечувствительно к регистру, как указано в RFC 3986 § 3.2.2, так как имена хостов в целом не чувствительны к регистру в DNS. Этот RFC также дает рекомендации о том, как избежать упомянутых вами проблем:

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

Я видел как минимум один HTTP-кеш (W3 Общий кэш), который не нормализует имя хоста таким образом и приводит к многократному кэшированию содержимого, например под example.com, Example.Com, EXAMPLE.COM, и т.д.