Кто-нибудь знает способ понуждения IIS не URL кодирования
Вы должны URL-кодирование. Передача необработанного «š» (\ xC5 \ xA1) в HTTP-заголовке недействительна. Браузер может исправить ошибку до «% C5% A1» для вас, но если это так, результат не будет отличаться, если вы только что написали «% C5% A1».
В том числе необработанное «š» в ссылке не так, браузер должен кодировать его в UTF-8 и URL-кодирование в соответствии с спецификацией IRI. Но чтобы убедиться, что это действительно работает, вы должны убедиться, что страница со ссылкой включена в кодировку UTF-8. Опять же, ручное кодирование URL-адресов, вероятно, безопасно.
У меня не было проблем с URL-адресами UTF-8, можете ли вы ссылаться на пример, который не работает?
У вас есть ссылка на ссылку, где она содержит сведения о том, что содержит допустимый HTTP-заголовок?
Canonical, RFC 2616. Однако на практике это несколько бесполезно. Критический пассаж:
Слова * Текст может содержать символы из наборов символов, кроме ISO-8859-1 только тогда, когда кодируется в соответствии с правилами RFC 2047.
Проблема заключается в том, что в соответствии к правилам RFC 2047, только «атомы» могут вмещать 2047 «закодированное слово». ТЕКСТ, в большинстве случаев он включен в HTTP, не может быть изобретен как атом. В любом случае RFC 2047 явно разработан для форматов RFC 822, и хотя HTTP очень похож на формат 822, он на самом деле не совместим; он имеет свою основную грамматику с тонкими, но значительными различиями. Ссылка на RFC 2047 в спецификации HTTP не дает никакого представления о том, как можно было бы интерпретировать ее каким-либо образом, и, насколько я знаю, может возникнуть ошибка.
В любом случае фактический браузер не пытается найти способ интерпретации кодировки RFC 2047 в любом месте своей обработки HTTP. И хотя байты, отличные от ASCII, определены RFC 2616 в ISO-8859-1, в действительности браузеры могут использовать ряд других кодировок (таких как UTF-8, или независимо от системного кодирования по умолчанию) в разных местах при обработке HTTP заголовки. Поэтому небезопасно полагаться даже на набор символов 8859-1! Не то, чтобы это дало вам «š» во всяком случае ...
Да, копия будет по-прежнему отображаться правильно –
Затем используйте «стандартные» буквы utf-8 - ваши хорватские и словенские клиенты смогут читать URL-адреса даже без маленькой «вверх-вниз-вниз крыши» над z в ž ... –
Спасибо Томас, поговорив с клиент, мы решили, что удаление диакритики - это самый простой и надежный способ действий. –