Ошибка при связывании файла .avi в папке с акцентом - PullRequest
5 голосов
/ 11 октября 2019

У меня есть файл .avi, который находится в папке на моем сервере. Название этой папки имеет знак акцента. Дело в том, что когда я помещаю этот файл в тег, он показывает текстовый файл (я полагаю, кодирование avi-файлов), что, очевидно, является ошибкой. Это просто происходит в Internet Explorer (по крайней мере, версия 11) с протоколом https.

Это не происходит с файлами mp4, ни с файлами avi, расположенными в «неакцентированной папке», ни с протоколом http, ни когда я вставляю адрес прямо в браузер, ни в Chrome или Firefox.

Примеры, иллюстрирующие то, что я пытаюсь сказать:

<a href="https://myserver.com/myAccentédFolder/myVid.avi" target="_blank">ERROR</a>
<a href="https://myserver.com/myNonAccentedFolder/myVid.avi" target="_blank">OK 1</a>
<a href="https://myserver.com/myAccentédFolder/myVid.mp4" target="_blank">OK 2</a>
<a href="http://myserver.com/myAccentédFolder/myVid.avi" target="_blank">OK 3</a>

Так что я знаю, как "исправить "это ... но что, если мне нужны все казуистрии? - Работа с IE 11 - Файл, который будет .avi - Папка с меткой акцента - Адрес, который будет в ссылке - Адрес, который будет протоколом https

Что происходит с $ $ & $%на

1 Ответ

2 голосов
/ 20 октября 2019

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

В UTF-8 для стандарта HTML5 % C3% A9 эквивалентно é , поэтому вашразметка привязки должна выглядеть следующим образом:

<a href="http://myserver.com/myAccent%C3%A9dFolder/myVid.avi" target="_blank">OK 3</a>

обратите внимание, что браузер изменит % C3% A9 на é в адресной строке (если браузер поддерживает это)

Вы можете найти эквиваленты для многих нестандартных символов здесь: https://www.w3schools.com/tags/ref_urlencode.asp

...