
Я разместилвеб-страницаэто объясняет, как я настраиваю параметры Visual Studio. Это включает в себя загрузки для расширений .vsix ("Загрузка" в разделе "Erweiterungen installieren", "Indent Guides") или файлы .config (далее "CodeMaid.config").
Internet Explorer и Edge — единственные два браузера, которые намеренно изменяют расширения этих загружаемых файлов, делая их неработоспособными после загрузки. Firefox просто делает то, что ему говорит веб-сервер, и сохраняет загруженный файл под указанным именем.
Я мог бы справиться со случаем .vsix, предоставив для него тип MIME "application/vsix". В противном случае IE интерпретировал бы такие файлы как .zip (чем они технически и являются). Их в любом случае нельзя переименовывать, поскольку .zip открывается совершенно иначе, чем файл .vsix.
Файл .config не имеет специального типа MIME. На самом деле это просто файл XML, и IE переименовывает его в .xml. К сожалению, он предназначен для использования в программе, которой нужны файлы .config.
Почему Internet Explorer ломает все подряд? Как можно остановить его от такой ерунды? Я нашел что-то о заголовке HTTP "X-Content-Type-Options: nosniff" для IE 8, но сегодня это ничего не меняет, так что я предполагаю, что это неправильно или тоже сломано. Или, может быть, мне просто нужно еще три заголовка к настоящему моменту?
решение1
Используйте следующие заголовки HTTP:
- X-Download-Options: noopen
- Содержимое-Расположение: вложение; имя файла=untrustedfile.html
Обработка MIME: принудительное сохранение
Наконец, для веб-приложений, которым необходимо обслуживать ненадежные файлы HTML, мы ввели механизм, помогающий предотвратить компрометацию безопасности вашего сайта ненадежным контентом. Когда новый заголовок X-Download-Options присутствует со значением noopen, пользователь не может напрямую открыть загрузку файла; вместо этого он должен сначала сохранить файл локально. Когда локально сохраненный файл позже открывается, он больше не выполняется в контексте безопасности вашего сайта, помогая предотвратить внедрение скрипта.
Рекомендации