Типы контента в браузерах, можем ли мы использовать Mime? - PullRequest
0 голосов
/ 15 мая 2010

Мне интересно, какие типы пантомимы опасны в браузерах, если они установлены в качестве Типа контента, если таковые имеются?

Я заметил, что многие форумы при загрузке файлов используют application / octet-stream для любых файлов, кроме изображений, и помещают их в тип контента заголовка при его выводе. Я задаюсь вопросом, почему они не помещают фактический тип пантомимы вместо этого в Тип контента? Есть ли риски безопасности, связанные с этим? До сих пор я использовал text / css, text / plain, audio / mpeg и многие другие и не заметил никакой разницы между application / octet-stream и этими другими.

Кто-нибудь знает точную разницу, и что делает application / octet-stream лучше или хуже ... использовать для Типа контента ??

Или, может быть, есть ограничения браузера?

Я говорю о получении Типа контента при загрузке файла, использовании $ _FILES ['myFile'] ['type'], сохранении этой информации в базе данных и использовании этого Типа контента в заголовке для этого файла. когда призван. Есть ли риск безопасности, связанный с этим? и / или ограничения браузера?

Обновлено

Если пользователь загружает файл в IE, и я использую переменную $ _FILES ['type'] для сохранения mime-типа в базе данных, а затем другой пользователь обращается к файлу, и я получаю mime-тип из база данных для файла, который был загружен с типом IE MIME, и этот пользователь использует Firefox для доступа к файлу, это вызовет какие-либо проблемы? Или наоборот, и задаюсь вопросом, будет ли это проблемой для любых браузеров?

Спасибо:)

1 Ответ

2 голосов
/ 15 мая 2010

Вы можете использовать любой тип пантомимы, который вам нравится. Если браузер понимает тип MIME, он попытается отрендерить его; если в браузере установлены плагины для этого типа MIME, он попытается запустить его; в противном случае вы просто получите диалог загрузки.

Причина, по которой application/octet-stream используется так часто, заключается в том, что оно более или менее подразумевает, что диалог загрузки будет отображаться в браузере. Таким образом, используя этот тип MIME в заголовке Content-Type, вы можете заставить браузер показывать диалог загрузки. Это в основном единственная причина, по которой он используется в таких ситуациях.

...