Имеют ли значение расширения файлов для браузеров? - PullRequest
10 голосов
/ 27 января 2010

Имеет ли значение, если я назову свои фотографии "test.jpg" или просто "test" для зрителей?

<img src="test.jpg" />
<img src="test" />

Оба работают во всех браузерах, которые я знаю, но есть ли смысл использовать правильное расширение файла?

Ответы [ 6 ]

12 голосов
/ 27 января 2010

Нет, важен заголовок Content-Type , который передается в ответе HTTP.

10 голосов
/ 27 января 2010

Это, вероятно, не имеет значения (см. Другие ответы).

Сказав это, почему бы не сохранить расширение имени файла? Это сделает ваш источник намного более читабельным, и вы легко поймете типы файлов, хранящиеся на сервере.

Даже если для этого нет технических причин, рекомендуется хранить каждый файл со значимым расширением. Кроме того, я думаю, вы можете сохранить ваши файлы .c, .h. и .py без расширений. Они будут компилироваться и запускаться, но это только сделает вашу жизнь намного сложнее.

6 голосов
/ 27 января 2010

Теоретически важен заголовок Content-Type, как указал Антон.

Однако на практике, по крайней мере, Internet Explorer в некоторых случаях пытается «угадать» MIME-тип, даже если он указан в заголовке Content-Type. Тогда имя файла является одной из вещей, которые рассматриваются. Однако это должно применяться только в некоторых особых случаях.

Смотрите здесь: http://msdn.microsoft.com/en-us/library/ms775147%28VS.85%29.aspx

1 голос
/ 27 января 2010

Для браузера нет, MIME-тип - это то, что действительно имеет значение. См. этот список типов MIME .

Для пользователя добавление расширения может иметь смысл, но большинство URL-адресов изображений не видны конечному пользователю, поэтому это не имеет большого значения.

Для сервера расширение может определенно иметь значение. Большинство веб-серверов используют расширение файла в качестве средства, с помощью которого они определяют, как обрабатывать входящий запрос. e.g.:

Если у вас возникла необходимость динамически генерировать файл robots.txt, вы можете настроить веб-сервер для обработки входящих запросов .txt иначе, чем если бы вы использовали статический файл robots.txt.

1 голос
/ 27 января 2010

Для изображений это не имеет значения, так как они используют mime-тип. Но тот факт, что вы спрашиваете, означает, что даже вы думаете, что это немного сбивает с толку. Это также предполагает наличие некоторого mod_rewrite foo или вы загружаете изображения через ваш фреймворк, что будет стоить вам некоторой производительности.

1 голос
/ 27 января 2010

Неа. Только MIME-тип в ответе имеет значение, а иногда даже не это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...