• • •
Apache - httpd.conf - Log
 
 • • •
Options - Order - Auth
 
 • • •
ErrorDocument
 
 • • •
AddType - MIME types
 
 • • •
CharsetDefault - CharsetSourceEnc
 
 • • •
Redirect - RedirectMatch
 
 • • •
Mod_rewrite - RewriteCond
 
 • • •
AddHandler - Pass(Set)Env
 
 • • •
PHP - .htaccess
 
 • • •
Дополнительный материал
 
Реклама


 
Статистика




Presently online :  11


Хостинг предостален: Best-host.ru
Типы файлов - MIME types

Типы файлов - MIME types сервера Arache

Наверняка у многих более-менее опытных пользователей Интернета возникал вопрос: "А как браузер узнает, какие документы надо показывать как html, какие как текст, а какие как графику, и как сделать так, чтобы определенные документы браузер не показывал сразу, а выдавал меню, позволяющее сохранить файл на диск?".

 

Для этого применяются так называемые MIME types. Каждому типу данных, которые обрабатываются веб-сервером, можно задать определенный тип, в том числе и через .htaccess настройку. Этот тип описывается набором символов, отражающим тип используемых данных.

Таблица типов наиболее часто используемых видов данных:

 Описание данных

Расширение файлов

MIME type

Картинки gif

gif

image/gif

Картинки jpeg

jpeg jpg jpe

image/jpeg

VRML-файлы

wrl vrml

model/vrml

HTML-документ

html htm

text/html

Обычный текст

asc txt

text/plain

Архив ZIP

zip

application/zip

Файл MS Word

doc

application/msword

Файл MS Excel

xls

application/vnd.ms-excel

Файл MS Power Point

ppt

application/vnd.ms-powerpoint

Файл Adobe Acrobat

pdf

application/pdf

Flash-документ

swf

application/x-shockwave-flash

Работает это так: веб-сервер знает, что, например, файлам с расширением .html соответствует тип text/html. В ответ на пришедший запрос html-файла сервер среди прочих http-заголовков возвращает поле Content-type, в котором и указывается тип данных для текущего документа. Пример :

# telnet user.net.ru 80

Connected to net.com.

HEAD /index.html HTTP/1.1

Host: user.net.com

HTTP/1.1 200 OK

Date: Wed, 22 Jul 2005 14:51:10 GMT

Last-Modified: Mon, 02 Jul 2005 07:41:37 GMT

Connection: close

Content-Type: text/html

Браузер, получив такой заголовок, знает, что документ с типом данных text/html это не что иное, как обычная веб-страница на языке HTML. Зная это, браузер обрабатывает принятый документ как HTML и показывает его пользователю именно с учетом этого. А вот если бы тип данных был, например, application/zip, браузер понял бы, что это ZIP-архив, который пользователю нужно предложить сохранить на диск.

Браузеры знают о том, каким образом нужно обрабатывать конкретные типы данных. Естественно, набор типов данных, известный браузерам, ограничен. Обусловлено это тем, что со временем появляются все новые и новые приложения для интернета, которые зачастую работают с новыми типами данных, которых раньше просто не существовало. Например, еще несколько лет назад не было типа audio/mpeg, которому соответствуют музыкальные файлы в формате mp3. Появился новый тип и в более поздних версиях браузеров он по умолчанию известен.

Кстати, добавить новый тип в браузер можно и вручную. Когда то давно у меня возникли проблемы с rar настройкой, т.е. файлы - архивы .rar вместо того что бы скачиваться и сохраняться, делали все в браузере все что угодно, кроме данной стандартной как мне казалось операции. В общем, много пришлось пересмотреть материала : -).

Т.е. для rar-файла апач выдает content-type: text/plain: RAR - нестандарт, и за пределами рунета практически не используется. Но использовать .zip часто для меня непозволительная роскошь, так как размеры архивов увеличатся в таком случае чуть ли не в 3 раза... А апач поступает совершенно правильно, отдавая его как plaintext, так как ничего о нем не знает.

Поведение Оперы так же соответствует стандартам, и то, что в IE происходит иначе, это изврат и нарушение стандартов, например, если сервер выдает htlm-файл с content-type:text/plain, то Опера вместо страницы покажет исходник (т.е. текст), однако IE показывает страницу нормально..."

Самое действенное и одновременно неудобное:

  1. в браузере - прав-клац на ссылке -> Save target as - дождаться завершения загрузки, потом сохранить страницу с расширением rar (работает, особенно актуально, когда такая загрузка произошла из Интернета);

  2. в браузере - настройки -> типы файлов -> убрать галку с "скрыть типы файлов ..." -> выбрать text/plain - txt и в свойствах этого типа файлов выбрать "показать диалог загрузки" - что бывает часто неудобно и НЕБЕЗОПАСНО;

  3. в браузере - настройки -> File Types -> убрать птичку с "Hide file types..." - выбрать ZIP -> в поле File Extension, поставить запятую и добавить RAR (без пробела - "zip,rar") - удобно, но срабатывает не во всех случаях.

Существует некий набор типов данных, который описывает большинство используемых в интернете форматов. Получить его можно на странице http://www.iana.org/assignments/media-types/

В данном материале использовались выдержки из статьи с сайта http://www.kursknet.ru/Hosting/htacc.sh

Объем информации: 8381 bytes
Россия • Курск • A-M • htaccess.net.ru 2005 - 2008


 
  In Partnership with AOL Search       Rambler's Top100