Spec-Zone.ru › Apache HTTP Server

Модуль Apache mod_mime

Описание: Связывает расширения запрошенного файла с поведением файла (обработчики и фильтры) и содержимым (MIME-тип, язык, кодовая страница и кодировка)
Статус: Базовый
Идентификатор модуля: mime_module
Файл исходного кода: mod_mime.c

Обзор

Этот модуль используется для присвоения метаданных содержимому, выбранному для HTTP-ответа, путем сопоставления шаблонов в URI или именах файлов с значениями метаданных. Например, расширения имен файлов содержимого часто определяют тип содержимого в Интернете, язык, кодовую страницу и кодировку содержимого. Эта информация отправляется в HTTP-сообщениях, содержащих это содержимое, и используется в согласовании содержимого при выборе альтернатив, таким образом, предпочтения пользователя учитываются при выборе одного из нескольких возможных содержимых для предоставления. См. mod_negotiation для получения дополнительной информации о согласовании содержимого.

Директивы AddCharset, AddEncoding, AddLanguage и AddType используются для сопоставления расширений файлов с метаданными этого файла. Соответственно, они устанавливают кодовую страницу, кодировку содержимого, язык содержимого и тип носителя (тип содержимого) документов. Директива TypesConfig используется для указания файла, который также сопоставляет расширения с типами носителя.

Кроме того, mod_mime может определять обработчик и фильтры, которые генерируют и обрабатывают содержимое. Директивы AddHandler, AddOutputFilter и AddInputFilter управляют модулями или скриптами, которые предоставляют документ. Директива MultiviewsMatch позволяет mod_negotiation рассматривать эти расширения файлов как включенные при проверке соответствия Multiviews.

В то время как mod_mime связывает метаданные с расширениями имен файлов, сервер core предоставляет директивы, используемые для сопоставления всех файлов в заданном контейнере (например, <Location>, <Directory>, или <Files>) с определенными метаданными. К этим директивам относятся ForceType, SetHandler, SetInputFilter и SetOutputFilter. Основные директивы переопределяют любые сопоставления расширений имен файлов, определенные в mod_mime.

Обратите внимание, что изменение метаданных файла не изменяет значение заголовка Last-Modified. Таким образом, ранее кэшированные копии могут по-прежнему использоваться клиентом или прокси-сервером с предыдущими заголовками. Если вы изменяете метаданные (язык, тип содержимого, кодовую страницу или кодировку), вам может потребоваться «изменить» соответствующие файлы (обновить дату последнего изменения), чтобы убедиться, что все посетители получат корректные заголовки содержимого.

Файлы с несколькими расширениями

Файлы могут иметь более одного расширения; порядок расширений обычно не имеет значения. Например, если файл welcome.html.fr сопоставляется с типом содержимого text/html и языком французский, то файл welcome.fr.html будет сопоставлен с точно такой же информацией. Если более чем одно расширение сопоставляется с тем же типом метаданных, то используется расширение справа, за исключением языков и кодировок содержимого. Например, если .gif сопоставляется с типом носителя image/gif, а .html сопоставляется с типом носителя text/html, то файл welcome.gif.html будет связан с типом носителя text/html.

Языки и кодировки содержимого обрабатываются кумулятивно, поскольку одному ресурсу можно присвоить более одного языка или кодировки. Например, файл welcome.html.en.de будет предоставлен с Content-Language: en, de и Content-Type: text/html.

Следует проявлять осторожность, когда файл с несколькими расширениями связывается как с типом носителя, так и с обработчиком. Это обычно приводит к обработке запроса модулем, связанным с обработчиком. Например, если расширение .imap сопоставляется с обработчиком imap-file (из mod_imagemap) и расширение .html сопоставляется с типом носителя text/html, то файл world.imap.html будет связан как с обработчиком imap-file, так и с типом носителя text/html. При обработке будет использоваться обработчик imap-file, и он будет обрабатываться как файл mod_imagemap imagemap.

Если вы хотите, чтобы только последняя часть имени файла, разделенная точкой, была сопоставлена с определенным элементом метаданных, не используйте директивы Add*. Например, если вы хотите обработать файл foo.html.cgi как скрипт CGI, но не файл bar.cgi.html, вместо использования AddHandler cgi-script .cgi, используйте

Настройка обработчика только по последнему расширению

<FilesMatch "[^.]+\.cgi$">
  SetHandler cgi-script
</FilesMatch>

Кодировка содержимого

Файл определенного типа носителя дополнительно может быть закодирован определенным способом для упрощения передачи по сети Интернет. Хотя это обычно относится к сжатию, например, gzip, это также может относиться к шифрованию, например, pgp или к кодировке, такой как UUencoding, которая предназначена для передачи двоичного файла в формате ASCII (текст).

В RFC HTTP/1.1, раздел 14.11, это выражено следующим образом:

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

Используя более одного расширения файла (см. раздел выше о нескольких расширениях файлов), вы можете указать, что файл имеет определенный тип и также определенную кодировку.

Например, у вас может быть файл, который является документом Microsoft Word, который сжат с помощью pkzip для уменьшения его размера. Если расширение .doc ассоциировано с типом файла Microsoft Word, а расширение .zip ассоциировано с кодировкой файла pkzip, то файл Resume.doc.zip будет известен как сжатый Word-документ с использованием pkzip.

Apache отправляет заголовок Content-encoding с ресурсом, чтобы сообщить клиенту-браузеру о методе кодирования.

Content-encoding: pkzip

Кодовые страницы и языки

Помимо типа файла и кодировки файла, еще одной важной информацией является язык конкретного документа и кодовая страница, на которой должен отображаться файл. Например, документ может быть написан на вьетнамском алфавите или на кириллице и должен отображаться как таковой. Эта информация также передается в HTTP-заголовках.

Кодовая страница, язык, кодировка и тип носителя используются в процессе согласования содержимого (см. mod_negotiation) для определения, какой документ предоставить клиенту, когда имеются альтернативные документы в различных кодовых страницах, языках, кодировках или типах носителей. Все сопоставления расширений имен файлов, созданные с помощью AddCharset, AddEncoding, AddLanguage и AddType директив (и расширения, указанные в MimeMagicFile), участвуют в этом процессе выбора. Расширения имен файлов, которые связаны только с помощью AddHandler, AddInputFilter или AddOutputFilter директив, могут быть включены или исключены из сопоставления с использованием директивы MultiviewsMatch.

Кодовые страницы

Для передачи дополнительной информации Apache необязательно отправляет заголовок Content-Language, чтобы указать язык документа, и может добавить дополнительную информацию в заголовок Content-Type, чтобы указать конкретную кодовую страницу, которая должна использоваться для правильного отображения информации.

Content-Language: en, fr Content-Type: text/plain; charset=ISO-8859-1

Спецификация языка — это двухбуквенное сокращение языка. charset — это имя конкретной кодовой страницы, которая должна использоваться.

Директива AddCharset

Описание: Сопоставляет заданные расширения имен файлов с указанной кодовой страницей содержимого
Синтаксис:
AddCharset charset extension [extension] ...
Контекст: настройка сервера, виртуальный хост, каталог, .htaccess
Переопределение: FileInfo
Статус: Базовый
Модуль: mod_mime

Директива AddCharset сопоставляет заданные расширения имен файлов с указанной кодовой страницей содержимого (зарегистрированное в Интернете имя для данной кодировки символов). charset — это параметр кодовой страницы типа носителя для ресурсов с именами файлов, содержащими extension. Это сопоставление добавляется к уже существующему, переопределяя любые уже существующие сопоставления для того же extension.

Пример

AddLanguage ja .ja
AddCharset EUC-JP .euc
AddCharset ISO-2022-JP .jis
AddCharset SHIFT_JIS .sjis

Тогда документ xxxx.ja.jis будет обрабатываться как японский документ с кодовой страницей ISO-2022-JP (так же, как и документ xxxx.jis.ja). Директива AddCharset полезна как для информирования клиента о кодировке символов документа, чтобы документ мог быть интерпретирован и отображен должным образом, так и для согласования содержимого, где сервер возвращает один из нескольких документов на основе предпочтений кодовой страницы клиента.

Аргумент extension нечувствителен к регистру и может быть указан с или без ведущей точки. Имена файлов могут иметь несколько расширений, и аргумент extension будет сравниваться с каждым из них.

См. также

  • mod_negotiation
  • AddDefaultCharset

Директива AddEncoding

Описание: Сопоставляет заданные расширения файлов со специфицированным типом кодировки
Синтаксис:
AddEncoding encoding extension [extension] ...
Контекст: настройка сервера, виртуальный хост, директория, .htaccess
Переопределение: FileInfo
Статус: Базовый
Модуль: mod_mime

Директива AddEncoding сопоставляет заданные расширения файлов с указанным типом HTTP-кодирования содержимого. encoding — это HTTP-кодирование содержимого, которое добавляется к значению поля заголовка Content-Encoding для документов, имена которых содержат extension. Это сопоставление добавляется к уже существующим, переопределяя любые существующие сопоставления для того же extension.

Пример

AddEncoding x-gzip .gz
AddEncoding x-compress .Z

Это приведет к тому, что имена файлов, содержащие расширение .gz, будут помечены как закодированные с использованием кодировки x-gzip, а имена файлов, содержащие расширение .Z, будут помечены как закодированные с помощью x-compress.

Старые клиенты ожидают x-gzip и x-compress, однако стандарт предписывает, что они эквивалентны gzip и compress соответственно. Apache сравнивает кодировки содержимого, игнорируя любые предваряющие x-. При ответе с кодировкой Apache будет использовать ту форму (т.е., x-foo или foo), которую запросил клиент. Если клиент не запросил конкретную форму, Apache будет использовать форму, заданную директивой AddEncoding. Короче говоря, для этих двух конкретных кодировок всегда следует использовать x-gzip и x-compress соответственно. Более новые кодировки, такие как deflate, должны быть указаны без x-.

Аргумент extension регистронезависим и может быть указан с или без ведущей точки. Имена файлов могут иметь несколько расширений, и аргумент extension будет сравниваться с каждым из них.

Директива AddHandler

Описание: Сопоставляет расширения файлов с указанным обработчиком
Синтаксис:
AddHandler handler-name extension [extension] ...
Контекст: настройка сервера, виртуальный хост, директория, .htaccess
Переопределение: FileInfo
Статус: Базовый
Модуль: mod_mime

Файлы с именем extension будут обрабатываться указанным именем обработчика. Это сопоставление добавляется к уже существующим, переопределяя любые существующие сопоставления для того же extension. Например, чтобы активировать CGI-скрипты с расширением файла .cgi, можно использовать:

AddHandler cgi-script .cgi

После добавления этой строки в файл httpd.conf любой файл, содержащий расширение .cgi, будет обрабатываться как CGI-программа.

Аргумент extension регистронезависим и может быть указан с или без ведущей точки. Имена файлов могут иметь несколько расширений, и аргумент extension будет сравниваться с каждым из них.

См. также

  • SetHandler

Директива AddInputFilter

Описание: Сопоставляет расширения файлов с фильтрами, которые будут обрабатывать запросы клиента
Синтаксис:
AddInputFilter filter[;filter...] extension [extension] ...
Контекст: настройка сервера, виртуальный хост, директория, .htaccess
Переопределение: FileInfo
Статус: Базовый
Модуль: mod_mime

AddInputFilter сопоставляет расширение файла extension с фильтрами, которые будут обрабатывать запросы клиента и входящие данные POST при их получении сервером. Это дополнительно к любым другим фильтрам, определенным в других местах, включая директиву SetInputFilter. Это сопоставление объединяется с уже существующими, переопределяя любые существующие сопоставления для того же extension.

Если указано несколько filter, они должны быть разделены точкой с запятой в порядке, в котором они должны обрабатывать содержимое. filter — регистронезависим.

Аргумент extension регистронезависим и может быть указан с или без ведущей точки. Имена файлов могут иметь несколько расширений, и аргумент extension будет сравниваться с каждым из них.

См. также

  • RemoveInputFilter
  • SetInputFilter

Директива AddLanguage

Описание: Сопоставляет заданное расширение файла с указанным языком содержимого
Синтаксис:
AddLanguage language-tag extension [extension] ...
Контекст: настройка сервера, виртуальный хост, директория, .htaccess
Переопределение: FileInfo
Статус: Базовый
Модуль: mod_mime

Директива AddLanguage сопоставляет заданное расширение файла с указанным языком содержимого. Файлам с именем extension присваивается значение HTTP Content-Language language-tag, соответствующее идентификаторам языков, определенным в RFC 3066. Эта директива переопределяет любые существующие сопоставления для того же extension.

Пример

AddEncoding x-compress .Z
AddLanguage en .en
AddLanguage fr .fr

Тогда документ xxxx.en.Z будет рассматриваться как сжатый английский документ (как и документ xxxx.Z.en). Хотя язык содержимого сообщается клиенту, браузер вряд ли будет использовать эту информацию. Директива AddLanguage более полезна для переговоров о содержимом, когда сервер возвращает один из нескольких документов в зависимости от языковых предпочтений клиента.

Если для одного и того же расширения задано несколько языковых назначений, используется последнее встреченное. Например:

AddLanguage en .en
AddLanguage en-gb .en
AddLanguage en-us .en

документы с расширением .en будут обрабатываться как en-us.

Аргумент extension регистронезависим и может быть указан с или без ведущей точки. Имена файлов могут иметь несколько расширений, и аргумент extension будет сравниваться с каждым из них.

См. также

  • mod_negotiation

Директива AddOutputFilter

Описание: Сопоставляет расширения файлов с фильтрами, которые будут обрабатывать ответы от сервера
Синтаксис:
AddOutputFilter filter[;filter...] extension [extension] ...
Контекст: настройка сервера, виртуальный хост, директория, .htaccess
Переопределение: FileInfo
Статус: Базовый
Модуль: mod_mime

Директива AddOutputFilter сопоставляет расширение файла extension с фильтрами, которые будут обрабатывать ответы от сервера перед отправкой клиенту. Это дополнительно к любым другим фильтрам, определённым в других местах, включая директивы SetOutputFilter и AddOutputFilterByType. Это сопоставление объединяется с уже существующими, переопределяя любые существующие сопоставления для того же extension.

Например, следующая настройка обработает все файлы .shtml с помощью включателей на стороне сервера, а затем скомпрессирует вывод с помощью mod_deflate.

AddOutputFilter INCLUDES;DEFLATE shtml

Если указано несколько фильтров, они должны быть разделены точкой с запятой в порядке обработки содержимого. Аргумент filter — регистронезависим.

Аргумент extension регистронезависим и может быть указан с или без ведущей точки. Имена файлов могут иметь несколько расширений, и аргумент extension будет сравниваться с каждым из них.

Обратите внимание, что при определении набора фильтров с помощью директивы AddOutputFilter, любое заданное определение заменит любое предыдущее определение, сделанное с помощью директивы AddOutputFilter.

# Effective filter "DEFLATE"
AddOutputFilter DEFLATE shtml
<Location "/foo">
  # Effective filter "INCLUDES", replacing "DEFLATE"
  AddOutputFilter INCLUDES shtml
</Location>
<Location "/bar">
  # Effective filter "INCLUDES;DEFLATE", replacing "DEFLATE"
  AddOutputFilter INCLUDES;DEFLATE shtml
</Location>
<Location "/bar/baz">
  # Effective filter "BUFFER", replacing "INCLUDES;DEFLATE"
  AddOutputFilter BUFFER shtml
</Location>
<Location "/bar/baz/buz">
  # No effective filter, replacing "BUFFER"
  RemoveOutputFilter shtml
</Location>

См. также

  • RemoveOutputFilter
  • SetOutputFilter
END_OF_DOCUMENT_MARKER

Директива AddType

Описание: Сопоставляет заданные расширения файлов со специфицированным типом контента
Синтаксис:
AddType media-type extension [extension] ...
Контекст: настройки сервера, виртуальный хост, директория, .htaccess
Переопределение: FileInfo
Статус: Base
Модуль: mod_mime

Директива AddType сопоставляет заданные расширения файлов со специфицированным типом контента. media-type — это тип медиа, который используется для файлов, содержащих extension. Это сопоставление добавляется к уже существующим, переопределяя любые ранее заданные сопоставления для данного extension.

Рекомендуется добавлять новые типы медиа с помощью директивы AddType вместо изменения файла TypesConfig.

Пример

AddType image/gif .gif

Или, чтобы указать несколько расширений файлов в одной директиве:

Пример

AddType image/jpeg jpeg jpg jpe

Аргумент extension не чувствителен к регистру и может быть указан с или без ведущей точки. Имена файлов могут иметь несколько расширений, и аргумент extension будет сравниваться с каждым из них.

Аналогичный эффект, что и в директиве mod_negotiation LanguagePriority, может быть достигнут путём указания media-type с qs.

Пример

AddType application/rss+xml;qs=0.8 .xml

Это полезно в ситуациях, например, когда клиент, запрашивающий Accept: */*, не может обработать контент, возвращённый сервером.

Эта директива в первую очередь настраивает типы контента, генерируемые для статических файлов, предоставляемых из файловой системы. Для ресурсов, отличных от статических файлов, где генератор ответа обычно указывает Content-Type, эта директива не оказывает влияния.

Примечание

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

Когда явные директивы, такие как SetHandler или AddHandler, не применяются к текущему запросу, внутреннее имя обработчика, обычно задаваемое этими директивами, вместо этого устанавливается в тип контента, заданный этой директивой.

Это историческое поведение, которое может использоваться некоторыми модулями сторонних разработчиков (например, mod_php) для взятия ответственности за сопоставление запроса.

Конфигурации, которые полагаются на такие «синтетические» типы, следует избегать. Кроме того, конфигурации, ограничивающие доступ к SetHandler или AddHandler, должны ограничивать доступ и к этой директиве.

См. также

  • ForceType
  • mod_negotiation

Директива DefaultLanguage

Описание: Определяет тег языка по умолчанию, который будет отправлен в поле заголовка Content-Language для всех ресурсов в текущем контексте, которым не был назначен тег языка другими средствами.
Синтаксис:
DefaultLanguage language-tag
Контекст: настройки сервера, виртуальный хост, директория, .htaccess
Переопределение: FileInfo
Статус: Base
Модуль: mod_mime

Директива DefaultLanguage сообщает Apache, что все ресурсы в области действия директивы (например, все ресурсы, охваченные текущим контейнером <Directory>), которые не имеют явного расширения языка (например, .fr или .de, как настроено в AddLanguage ), должны получить Content-Language language-tag. Это позволяет помечать целые деревья каталогов как содержащие, например, контент на голландском языке, без необходимости переименовывать каждый файл. Обратите внимание, что в отличие от использования расширений для указания языка, DefaultLanguage может указать только один язык.

Если директива DefaultLanguage не активна, и файл не имеет никаких расширений языка, как настроено в AddLanguage, тогда заголовок Content-Language не будет сгенерирован.

Пример

DefaultLanguage en

См. также

  • mod_negotiation

Директива ModMimeUsePathInfo

Описание: Указывает mod_mime обрабатывать компоненты path_info как часть имени файла
Синтаксис:
ModMimeUsePathInfo On|Off
Значение по умолчанию:
ModMimeUsePathInfo Off
Контекст: директория
Статус: Base
Модуль: mod_mime

Директива ModMimeUsePathInfo используется для объединения имени файла с компонентом path_info URL для применения директив mod_mime к запросу. Значение по умолчанию — Off, поэтому компонент path_info игнорируется.

Эта директива рекомендуется при использовании виртуальной файловой системы.

Пример

ModMimeUsePathInfo On

Если у вас запрос на /index.php/foo.shtml mod_mime теперь будет обрабатывать входящий запрос как /index.php/foo.shtml, и директивы, такие как AddOutputFilter INCLUDES .shtml, добавятся INCLUDES фильтр к запросу. Если ModMimeUsePathInfo не установлено, фильтр INCLUDES не будет добавлен. Это будет работать аналогично для виртуальных путей, таких как те, что определены в <Location>

См. также

  • AcceptPathInfo

Директива MultiviewsMatch

Описание: Типы файлов, которые будут включены при поиске совпадающего файла с помощью MultiViews
Синтаксис:
MultiviewsMatch Any|NegotiatedOnly|Filters|Handlers [Handlers|Filters]
Значение по умолчанию:
MultiviewsMatch NegotiatedOnly
Контекст: настройки сервера, виртуальный хост, директория, .htaccess
Переопределение: FileInfo
Статус: Base
Модуль: mod_mime

MultiviewsMatch позволяет использовать три различных варианта поведения для функции Multiviews модуля mod_negotiation. Multiviews позволяет запросу на файл, например index.html, соответствовать любым согласованным расширениям, следующими за основным запросом, например index.html.en, index.html.fr, или index.html.gz.

Вариант NegotiatedOnly предусматривает, что каждое расширение, идущее после базового имени, должно соответствовать признанному mod_mime расширению для согласования контента, например Charset, Content-Type, Language или Encoding. Это самая строгая реализация с наименьшим количеством непредвиденных последствий, и это поведение по умолчанию.

Чтобы включить расширения, связанные с обработчиками и/или фильтрами, установите директиву MultiviewsMatch на Handlers, Filters, или оба ключевых слова. При равных других условиях, будет передан самый маленький файл, например, при выборе между index.html.cgi размером 500 байт и index.html.pl размером 1000 байт, файл .cgi в данном примере победит. Пользователи файлов .asis могут предпочесть использовать опцию Handler, если файлы .asis связаны с asis-handler.

Наконец, вы можете разрешить соответствие Any расширениям, даже если mod_mime не распознаёт расширение. Это может привести к непредсказуемым результатам, например, к предоставлению файлов .old или .bak, которых веб-мастер не ожидал видеть.

Например, следующая конфигурация позволит обработчикам и фильтрам участвовать в Multiviews, но исключит неизвестные файлы:

MultiviewsMatch Handlers Filters

MultiviewsMatch не разрешено в разделе <Location> или <LocationMatch>.

См. также

  • Options
  • mod_negotiation

Директива RemoveCharset

Описание: Удаляет любые ассоциации наборов символов для набора расширений файлов
Синтаксис:
RemoveCharset extension [extension] ...
Контекст: виртуальный хост, директория, .htaccess
Переопределение: FileInfo
Статус: Base
Модуль: mod_mime

Директива RemoveCharset удаляет любые ассоциации наборов символов для файлов с заданными расширениями. Это позволяет .htaccess файлам в подкаталогах отменить любые ассоциации, унаследованные от родительских каталогов или файлов конфигурации сервера.

Аргумент extension не чувствителен к регистру и может быть указан с или без ведущей точки.

Пример

RemoveCharset .html .shtml

Директива RemoveEncoding

Описание: Удаляет любые ассоциации кодирования контента для набора расширений файлов
Синтаксис:
RemoveEncoding extension [extension] ...
Контекст: виртуальный хост, директория, .htaccess
Переопределение: FileInfo
Статус: Base
Модуль: mod_mime

Директива RemoveEncoding удаляет любые ассоциации кодирования для файлов с заданными расширениями. Это позволяет .htaccess файлам в подкаталогах отменить любые ассоциации, унаследованные от родительских каталогов или файлов конфигурации сервера. Пример использования:

/foo/.htaccess:

AddEncoding x-gzip .gz
AddType text/plain .asc
<Files "*.gz.asc">
    RemoveEncoding .gz
</Files>

Это приведет к тому, что foo.gz будет помечен как закодированный методом gzip, но foo.gz.asc как текстовый файл без кодирования.

Примечание

Директивы RemoveEncoding обрабатываются после любых директив AddEncoding, поэтому возможно, что они отменят результаты последних, если оба находятся в одной и той же конфигурации каталога.

Аргумент extension не чувствителен к регистру и может быть указан с или без ведущей точки.

Директива RemoveHandler

Описание: Удаляет все ассоциации обработчиков для набора расширений файлов
Синтаксис:
RemoveHandler extension [extension] ...
Контекст: виртуальный хост, каталог, .htaccess
Переопределение: FileInfo
Статус: Base
Модуль: mod_mime

Директива RemoveHandler удаляет все ассоциации обработчиков для файлов с заданными расширениями. Это позволяет .htaccess файлам в подкаталогах отменить любые ассоциации, унаследованные от родительских каталогов или файлов конфигурации сервера. Пример её использования:

/foo/.htaccess:

AddHandler server-parsed .html

/foo/bar/.htaccess:

RemoveHandler .html

Это приводит к тому, что .html файлы в каталоге /foo/bar будут обрабатываться как обычные файлы, а не как кандидаты для парсинга (см. модуль mod_include).

Аргумент extension нечувствителен к регистру и может быть указан с или без ведущей точки.

Директива RemoveInputFilter

Описание: Удаляет все ассоциации фильтров входных данных для набора расширений файлов
Синтаксис:
RemoveInputFilter extension [extension] ...
Контекст: виртуальный хост, каталог, .htaccess
Переопределение: FileInfo
Статус: Base
Модуль: mod_mime

Директива RemoveInputFilter удаляет все ассоциации фильтров входных данных для файлов с указанными расширениями. Это позволяет .htaccess файлам в подкаталогах отменить любые ассоциации, унаследованные от родительских каталогов или файлов конфигурации сервера.

Аргумент extension нечувствителен к регистру и может быть указан с или без ведущей точки.

См. также

  • AddInputFilter
  • SetInputFilter

Директива RemoveLanguage

Описание: Удаляет все ассоциации языков для набора расширений файлов
Синтаксис:
RemoveLanguage extension [extension] ...
Контекст: виртуальный хост, каталог, .htaccess
Переопределение: FileInfo
Статус: Base
Модуль: mod_mime

Директива RemoveLanguage удаляет все ассоциации языков для файлов с указанными расширениями. Это позволяет .htaccess файлам в подкаталогах отменить любые ассоциации, унаследованные от родительских каталогов или файлов конфигурации сервера.

Аргумент extension нечувствителен к регистру и может быть указан с или без ведущей точки.

Директива RemoveOutputFilter

Описание: Удаляет все ассоциации фильтров выходных данных для набора расширений файлов
Синтаксис:
RemoveOutputFilter extension [extension] ...
Контекст: виртуальный хост, каталог, .htaccess
Переопределение: FileInfo
Статус: Base
Модуль: mod_mime

Директива RemoveOutputFilter удаляет все ассоциации фильтров выходных данных для файлов с указанными расширениями. Это позволяет .htaccess файлам в подкаталогах отменить любые ассоциации, унаследованные от родительских каталогов или файлов конфигурации сервера.

Аргумент extension нечувствителен к регистру и может быть указан с или без ведущей точки.

Пример

RemoveOutputFilter shtml

См. также

  • AddOutputFilter

Директива RemoveType

Описание: Удаляет все ассоциации типов содержимого для набора расширений файлов
Синтаксис:
RemoveType extension [extension] ...
Контекст: виртуальный хост, каталог, .htaccess
Переопределение: FileInfo
Статус: Base
Модуль: mod_mime

Директива RemoveType удаляет все ассоциации типов содержимого для файлов с указанными расширениями. Это позволяет .htaccess файлам в подкаталогах отменить любые ассоциации, унаследованные от родительских каталогов или файлов конфигурации сервера. Пример её использования:

/foo/.htaccess:

RemoveType .cgi

Это удалит любую специальную обработку .cgi файлов в каталоге /foo/ и всех подкаталогах, в результате чего ответы, содержащие эти файлы, будут исключать заголовок HTTP Content-Type.

Примечание

Директивы RemoveType обрабатываются после директивы AddType, поэтому возможно, что они отменят действие последней, если обе встречаются в одной конфигурации каталога.

Аргумент extension нечувствителен к регистру и может быть указан с или без ведущей точки.

Директива TypesConfig

Описание: Расположение файла mime.types
Синтаксис:
TypesConfig file-path
Значение по умолчанию:
TypesConfig conf/mime.types
Контекст: конфигурация сервера
Статус: Base
Модуль: mod_mime

Директива TypesConfig устанавливает расположение файла конфигурации типов содержимого. Путь к файлу является относительным к ServerRoot. Этот файл задаёт список сопоставлений между расширениями файлов и типами содержимого по умолчанию. Большинство администраторов используют файл mime.types, предоставленный их ОС, который сопоставляет распространённые расширения файлов с официальным списком зарегистрированных IANA типов содержимого, поддерживаемым по адресу http://www.iana.org/assignments/media-types/index.html, а также большим количеством неофициальных типов. Это упрощает файл httpd.conf, предоставляя большинство определений типов содержимого, и может быть переопределён директивами AddType по мере необходимости. Вы не должны редактировать файл mime.types, так как он может быть заменён при обновлении сервера.

Файл содержит строки в формате аргументов для директивы AddType:

media-type [extension] ...

Регистр расширения не имеет значения. Пустые строки и строки, начинающиеся с символа решётки (#), игнорируются. Пустые строки там для полноты (файла mime.types). Apache httpd всё ещё может определять эти типы с помощью mod_mime_magic.

Пожалуйста, не отправляйте запросы в Apache HTTP Server Project для добавления новых записей в распределённый файл mime.types, если (1) они не зарегистрированы в IANA, и (2) они используют широко принятые, неконфликтные расширения файлов на разных платформах. category/x-subtype запросы будут автоматически отклоняться, так же как и любые новые расширения из двух букв, так как они, вероятно, впоследствии будут конфликтовать с уже переполненным пространством имён языков и наборов символов.

См. также

  • mod_mime_magic

© 2018 The Apache Software Foundation
Licensed under the Apache License, Version 2.0.
https://httpd.apache.org/docs/2.4/en/mod/mod_mime.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API