Модуль Apache mod_autoindex
| Описание: | Автоматически создаёт индексы каталогов, подобно команде Unix ls или команде оболочки Win32 dir |
|---|---|
| Статус: | Базовый |
| Идентификатор модуля: | autoindex_module |
| Исходный файл: | mod_autoindex.c |
Сводка
Индекс каталога может формироваться одним из двух способов:
- Из файла, расположенного в этом каталоге и обычно называемого
index.html. ДирективаDirectoryIndexзадаёт имя файла или файлов, которые будут использоваться. Это настраивается с помощьюmod_dir. - В противном случае используется список, сформированный сервером. Другие директивы управляют форматом этого списка. Директивы
AddIcon,AddIconByEncodingиAddIconByTypeиспользуются для задания списка значков, отображаемых для различных типов файлов; для каждого файла в списке отображается первый значок, соответствующий этому файлу. Эти настройки задаются с помощьюmod_autoindex.
Эти две функции разделены, чтобы при необходимости можно было полностью отключить (или заменить) автоматическое создание индекса.
Автоматическое создание индекса включается с помощью Options +Indexes. Подробнее см. директиву Options.
Если для директивы IndexOptions задан параметр FancyIndexing, заголовки столбцов становятся ссылками, управляющими порядком отображения. При выборе ссылки на заголовок список формируется заново и сортируется по значениям в этом столбце. Повторный выбор того же заголовка переключает порядок сортировки с возрастающего на убывающий и обратно. Ссылки в заголовках столбцов можно отключить параметром SuppressColumnSorting директивы IndexOptions.
Обратите внимание: при сортировке по «Размеру» используется фактический размер файлов, а не отображаемое значение. Поэтому файл размером 1010 байт всегда будет показан перед файлом размером 1011 байт (при сортировке по возрастанию), хотя оба будут отображаться как «1K».
Аргументы запроса Autoindex
Доступны различные аргументы строки запроса, позволяющие клиенту управлять порядком сортировки списка каталога, а также тем, какие файлы будут включены в список. Если вы не хотите предоставлять клиенту такую возможность, параметр IndexOptions IgnoreClient отключает эту функциональность.
Ссылки в заголовках столбцов для сортировки являются гиперссылками на текущую страницу и добавляют приведённые ниже параметры сортировки. Любой из перечисленных параметров можно добавить к запросу ресурса каталога.
-
C=Nсортирует каталог по имени файла -
C=Mсортирует каталог по дате последнего изменения, а затем по имени файла -
C=Sсортирует каталог по размеру, а затем по имени файла -
C=Dсортирует каталог по описанию, а затем по имени файла -
O=Aсортирует список по возрастанию -
O=Dсортирует список по убыванию -
F=0форматирует список как простой список (без FancyIndexed) -
F=1форматирует список как список FancyIndexed -
F=2форматирует список как список FancyIndexed в HTML-таблице -
V=0отключает сортировку версий -
V=1включает сортировку версий -
P=patternвыводит только файлы, соответствующие заданному pattern
Обратите внимание: аргумент запроса «P»attern проверяется после обработки обычных директив IndexIgnore, а имена всех файлов по-прежнему должны соответствовать тем же критериям, что и в любом другом списке autoindex. Парсер аргументов запроса в mod_autoindex немедленно прекращает работу при обнаружении неизвестного параметра. Аргументы запроса должны быть правильно сформированы в соответствии с приведённой выше таблицей.
Простой пример ниже, который можно скопировать и сохранить в файле header.html, демонстрирует эти параметры запроса. Обратите внимание: неизвестный аргумент «X» для кнопки отправки указан последним, чтобы все аргументы были обработаны до того, как mod_autoindex встретит ввод X=Go.
Пример
<form action="" method="get">
Show me a <select name="F">
<option value="0"> Plain list</option>
<option value="1" selected="selected"> Fancy list</option>
<option value="2"> Table list</option>
</select>
Sorted by <select name="C">
<option value="N" selected="selected"> Name</option>
<option value="M"> Date Modified</option>
<option value="S"> Size</option>
<option value="D"> Description</option>
</select>
<select name="O">
<option value="A" selected="selected"> Ascending</option>
<option value="D"> Descending</option>
</select>
<select name="V">
<option value="0" selected="selected"> in Normal order</option>
<option value="1"> in Version order</option>
</select>
Matching <input type="text" name="P" value="*" />
<input type="submit" name="X" value="Go" />
</form> Директива AddAlt
| Описание: | Альтернативный текст, отображаемый вместо значка, выбранного по имени файла |
|---|---|
| Синтаксис: | AddAlt string file [file] ... |
| Контекст: | конфигурация сервера, виртуальный хост, каталог, .htaccess |
| Переопределение: | Indexes |
| Статус: | Базовый |
| Модуль: | mod_autoindex |
AddAlt задаёт альтернативный текст, отображаемый вместо значка для FancyIndexing. File — это расширение файла, часть имени файла, шаблон с подстановочными знаками или полное имя файла, для которого задаётся описание. Если String содержит пробельные символы, его необходимо заключить в кавычки (" или '). Этот альтернативный текст отображается, если клиент не поддерживает изображения, отключил их загрузку или не смог получить значок.
AddAlt "PDF file" *.pdf AddAlt Compressed *.gz *.zip *.Z
Директива AddAltByEncoding
| Описание: | Альтернативный текст, отображаемый вместо значка, выбранного по MIME-кодировке |
|---|---|
| Синтаксис: | AddAltByEncoding string MIME-encoding [MIME-encoding] ... |
| Контекст: | конфигурация сервера, виртуальный хост, каталог, .htaccess |
| Переопределение: | Indexes |
| Статус: | Базовый |
| Модуль: | mod_autoindex |
AddAltByEncoding задаёт альтернативный текст, отображаемый вместо значка для FancyIndexing. MIME-encoding — допустимая кодировка содержимого, например x-compress. Если String содержит пробельные символы, его необходимо заключить в кавычки (" или '). Этот альтернативный текст отображается, если клиент не поддерживает изображения, отключил их загрузку или не смог получить значок.
AddAltByEncoding gzip x-gzip
Директива AddAltByType
| Описание: | Альтернативный текст, отображаемый вместо значка, выбранного по типу содержимого MIME |
|---|---|
| Синтаксис: | AddAltByType string MIME-type [MIME-type] ... |
| Контекст: | конфигурация сервера, виртуальный хост, каталог, .htaccess |
| Переопределение: | Indexes |
| Статус: | Базовый |
| Модуль: | mod_autoindex |
AddAltByType задаёт альтернативный текст, отображаемый вместо значка для FancyIndexing. MIME-type — допустимый тип содержимого, например text/html. Если String содержит пробельные символы, его необходимо заключить в кавычки (" или '). Этот альтернативный текст отображается, если клиент не поддерживает изображения, отключил их загрузку или не смог получить значок.
AddAltByType 'plain text' text/plain
Директива AddDescription
| Описание: | Описание, отображаемое для файла |
|---|---|
| Синтаксис: | AddDescription string file [file] ... |
| Контекст: | конфигурация сервера, виртуальный хост, каталог, .htaccess |
| Переопределение: | Indexes |
| Статус: | Базовый |
| Модуль: | mod_autoindex |
Эта директива задаёт описание, отображаемое для файла в FancyIndexing. File — это расширение файла, часть имени файла, шаблон с подстановочными знаками или полное имя файла, для которого задаётся описание. String заключается в двойные кавычки (").
AddDescription "The planet Mars" mars.gif AddDescription "My friend Marshall" friends/mars.gif
Типичная ширина поля описания по умолчанию составляет 23 байта. Параметр IndexOptions SuppressIcon добавляет ещё 6 байт, параметр IndexOptions SuppressSize — 7 байт, а параметр IndexOptions SuppressLastModified — 19 байт. Таким образом, максимальная ширина столбца описания, назначаемая по умолчанию, составляет 55 байт.
Поскольку аргумент File может быть частью имени файла, помните, что слишком короткая часть имени может соответствовать непредусмотренным файлам. Например, le.html будет соответствовать файлу le.html, но также и файлу example.html. Если возможна неоднозначность, указывайте имя файла как можно полнее, но учитывайте, что будет использовано первое найденное совпадение, и располагайте директивы AddDescription в соответствующем порядке.
Подробнее о переопределении ширины этого столбца или разрешении описаний неограниченной длины см. ключевое слово DescriptionWidth IndexOptions.
Предупреждение
Описательный текст, заданный с помощью AddDescription, может содержать HTML-разметку, например теги и символьные сущности. Если из-за ширины столбца описания элемент с разметкой будет усечён (например, оборвётся конец выделенной жирным шрифтом фразы), это может повлиять на остальную часть списка каталога.
Аргументы с указанием пути
Абсолютные пути в настоящее время не поддерживаются и во время выполнения не соответствуют ни одному файлу. Аргументы с относительным путём, обычно используемые только в контексте htaccess, неявно получают префикс '*/', чтобы избежать совпадения с неполными именами каталогов.
Директива AddIcon
| Описание: | Значок, отображаемый для файла, выбранного по имени |
|---|---|
| Синтаксис: | AddIcon icon name [name] ... |
| Контекст: | конфигурация сервера, виртуальный хост, каталог, .htaccess |
| Переопределение: | Indexes |
| Статус: | Базовый |
| Модуль: | mod_autoindex |
Эта директива задаёт значок, отображаемый рядом с файлом, имя которого заканчивается на name, в FancyIndexing. Icon — это либо относительный URL значка (с экранированием %-символов), либо полный URL удалённого ресурса, либо строка формата (alttext,url), где alttext — текстовая метка значка для браузеров без графического интерфейса.
Name — это ^^DIRECTORY^^ для каталогов, ^^BLANKICON^^ для пустых строк (для правильного форматирования списка), расширение файла, шаблон с подстановочными знаками, часть имени файла или полное имя файла.
^^BLANKICON^^ используется только для форматирования и поэтому не требуется, если вы используете IndexOptions HTMLTable.
#Examples AddIcon (IMG,/icons/image.png) .gif .jpg .png AddIcon /icons/dir.png ^^DIRECTORY^^ AddIcon /icons/backup.png *~
По возможности следует использовать AddIconByType вместо AddIcon.
Директива AddIconByEncoding
| Описание: | Значок, отображаемый рядом с файлами, выбранными по кодировке содержимого MIME |
|---|---|
| Синтаксис: | AddIconByEncoding icon MIME-encoding [MIME-encoding] ... |
| Контекст: | конфигурация сервера, виртуальный хост, каталог, .htaccess |
| Переопределение: | Indexes |
| Статус: | Базовый |
| Модуль: | mod_autoindex |
Эта директива задаёт значок, отображаемый рядом с файлами, имеющими FancyIndexing. Icon — это либо относительный URL значка (с экранированием %-символов), либо полный URL удалённого ресурса, либо строка формата (alttext,url), где alttext — текстовая метка значка для браузеров без графического интерфейса.
MIME-encoding — допустимая кодировка содержимого, например x-compress.
AddIconByEncoding /icons/compress.png x-compress
Директива AddIconByType
| Описание: | Значок, отображаемый рядом с файлами, выбранными по типу содержимого MIME |
|---|---|
| Синтаксис: | AddIconByType icon MIME-type [MIME-type] ... |
| Контекст: | конфигурация сервера, виртуальный хост, каталог, .htaccess |
| Переопределение: | Indexes |
| Статус: | Базовый |
| Модуль: | mod_autoindex |
Эта директива задаёт значок, отображаемый рядом с файлами типа MIME-type в FancyIndexing. Icon — это либо относительный URL значка (с экранированием %-символов), либо полный URL удалённого ресурса, либо строка формата (alttext,url), где alttext — текстовая метка значка для браузеров без графического интерфейса.
MIME-type — шаблон с подстановочными знаками, соответствующий требуемым типам MIME.
AddIconByType (IMG,/icons/image.png) image/*
Директива DefaultIcon
| Описание: | Значок, отображаемый для файлов, если для них не настроен специальный значок |
|---|---|
| Синтаксис: | DefaultIcon url-path |
| Контекст: | конфигурация сервера, виртуальный хост, каталог, .htaccess |
| Переопределение: | Indexes |
| Статус: | Базовый |
| Модуль: | mod_autoindex |
Директива DefaultIcon задаёт значок, отображаемый для файлов, для которых не найден специальный значок, в FancyIndexing. Url-path — это относительный URL значка (с экранированием %-символов) или полный URL удалённого ресурса.
DefaultIcon /icon/unknown.png
Директива HeaderName
| Описание: | Имя файла, который будет вставлен в начало списка индекса |
|---|---|
| Синтаксис: | HeaderName filename |
| Контекст: | конфигурация сервера, виртуальный хост, каталог, .htaccess |
| Переопределение: | Indexes |
| Статус: | Базовый |
| Модуль: | mod_autoindex |
Директива HeaderName задаёт имя файла, который будет вставлен в начало списка индекса. Filename — имя включаемого файла.
HeaderName HEADER.html
Теперь и HeaderName, и ReadmeName рассматривают Filename как URI-путь относительно пути, использованного для доступа к индексируемому каталогу. Если Filename начинается с косой черты, он будет рассматриваться относительно DocumentRoot.
HeaderName /include/HEADER.html
Filename должен разрешаться в документ с основным типом содержимого text/* (например, text/html, text/plain и т. д.). Это означает, что filename может указывать на CGI-скрипт, если фактический тип файла скрипта (в отличие от типа его вывода) отмечен как text/html, например с помощью такой директивы:
AddType text/html .cgi
Согласование содержимого будет выполнено, если действует Options MultiViews. Если filename разрешается в статический документ text/html (не CGI-скрипт) и включена одна из директив options Includes или IncludesNOEXEC, файл будет обработан для серверных включений (см. документацию mod_include).
Если файл, заданный директивой HeaderName, содержит начало HTML-документа (<html>, <head> и т. д.), вероятно, вам потребуется задать IndexOptions +SuppressHTMLPreamble, чтобы эти теги не повторялись.
См. также
Директива IndexHeadInsert
| Описание: | Вставляет текст в раздел HEAD страницы индекса. |
|---|---|
| Синтаксис: | IndexHeadInsert "markup ..." |
| Контекст: | конфигурация сервера, виртуальный хост, каталог, .htaccess |
| Переопределение: | Indexes |
| Статус: | Базовый |
| Модуль: | mod_autoindex |
Директива IndexHeadInsert задаёт строку для вставки в раздел <head> HTML-кода, генерируемого для страницы индекса.
IndexHeadInsert "<link rel=\"sitemap\" href=\"/sitemap.html\">"
Директива IndexIgnore
| Описание: | Добавляет файлы в список скрываемых при выводе содержимого каталога |
|---|---|
| Синтаксис: | IndexIgnore file [file] ... |
| Значение по умолчанию: | IndexIgnore "." |
| Контекст: | конфигурация сервера, виртуальный хост, каталог, .htaccess |
| Переопределение: | Indexes |
| Статус: | Базовый |
| Модуль: | mod_autoindex |
Директива IndexIgnore добавляет файлы в список скрываемых при выводе содержимого каталога. File — это шаблон с подстановочными знаками в стиле оболочки или полное имя файла. Несколько директив IndexIgnore дополняют список, а не заменяют его. По умолчанию список содержит . (текущий каталог).
IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t
Регулярные выражения
В настоящее время эта директива не работает в разделах конфигурации с аргументами, заданными регулярными выражениями, например в <DirectoryMatch>
Директива IndexIgnoreReset
| Описание: | Очищает список файлов, скрываемых при выводе содержимого каталога |
|---|---|
| Синтаксис: | IndexIgnoreReset ON|OFF |
| Контекст: | конфигурация сервера, виртуальный хост, каталог, .htaccess |
| Переопределение: | Indexes |
| Статус: | Базовый |
| Модуль: | mod_autoindex |
| Совместимость: | 2.3.10 и более поздние версии |
Директива IndexIgnoreReset удаляет из списка все файлы, игнорируемые директивой IndexIgnore и унаследованные из других разделов конфигурации.
<Directory "/var/www">
IndexIgnore *.bak .??* *~ *# HEADER* README* RCS CVS *,v *,t
</Directory>
<Directory "/var/www/backups">
IndexIgnoreReset ON
IndexIgnore .??* *# HEADER* README* RCS CVS *,v *,t
</Directory> После использования этой директивы проверьте конфигурацию по умолчанию и при необходимости явно добавьте в список игнорирования нужные шаблоны.
Директива IndexOptions
| Описание: | Различные параметры конфигурации для индексирования каталогов |
|---|---|
| Синтаксис: | IndexOptions [+|-]option [[+|-]option] ... |
| По умолчанию: | By default, no options are enabled. |
| Контекст: | конфигурация сервера, виртуальный хост, каталог, .htaccess |
| Переопределение: | Indexes |
| Статус: | Базовый |
| Модуль: | mod_autoindex |
Директива IndexOptions задаёт поведение индексирования каталогов. Параметр может принимать одно из следующих значений:
- AddAltClass
- Добавляет дополнительное объявление класса CSS для каждой строки таблицы со списком файлов, если включён
IndexOptions HTMLTableи определёнIndexStyleSheet. Вместо стандартных классовevenиodd, которые в противном случае применялись бы к каждой строке таблицы, используется классeven-ALTилиodd-ALT, где ALT — это стандартный альтернативный текст, связанный со стилем файла (например, snd, txt, img и т. д.), или текст, заданный одной из директивAddAlt*. - Charset=набор-символов
- Ключевое слово
Charsetпозволяет указать набор символов для сгенерированной страницы. По умолчанию используетсяUTF-8в Windows и Mac OS X иISO-8859-1в остальных системах. (Это зависит от того, использует ли нижележащая файловая система имена файлов в Unicode.)IndexOptions Charset=UTF-8
- DescriptionWidth=[n | *]
- Ключевое слово
DescriptionWidthпозволяет задать ширину столбца описания в символах. -
-DescriptionWidth(или отсутствие значения) позволяетmod_autoindexвычислить оптимальную ширину. -
DescriptionWidth=nзадаёт ширину столбца в n байт. -
DescriptionWidth=*расширяет столбец до ширины, необходимой для самого длинного описания. Информацию об опасностях, связанных с усечением описаний, см. в разделеAddDescription. - FancyIndexing
- Включает расширенное индексирование каталогов.
- FoldersFirst
- Если этот параметр включён, подкаталоги всегда отображаются первыми, а за ними следуют обычные файлы каталога. Список делится на две части — файлы и подкаталоги. Каждая часть сортируется отдельно, после чего подкаталоги выводятся первыми. Например, если задана сортировка по имени в обратном порядке и включён
FoldersFirst, подкаталогZedбудет показан перед подкаталогомBeta, а тот — перед обычными файламиGammaиAlpha. Этот параметр действует только в том случае, если также включёнFancyIndexing. - HTMLTable
- Этот параметр вместе с
FancyIndexingсоздаёт простую таблицу для расширенного списка файлов каталога. Он необходим на платформах с поддержкой UTF-8, а также если имена файлов или текст описаний могут чередоваться в направлении чтения слева направо и справа налево. - IconsAreLinks
- При расширенном индексировании значки становятся частью ссылки на имя файла.
- IconHeight[=пиксели]
- При наличии этого параметра, используемого вместе с
IconWidth, сервер добавляет атрибутыheightиwidthв тегimgзначка файла. Это позволяет браузеру заранее рассчитать макет страницы, не дожидаясь загрузки всех изображений. Если значение не указано, используется стандартная высота значков, входящих в состав Apache httpd. Этот параметр действует только в том случае, если также включёнFancyIndexing. - IconWidth[=пиксели]
- При наличии этого параметра, используемого вместе с
IconHeight, сервер добавляет атрибутыheightиwidthв тегimgзначка файла. Это позволяет браузеру заранее рассчитать макет страницы, не дожидаясь загрузки всех изображений. Если значение не указано, используется стандартная ширина значков, входящих в состав Apache httpd. - IgnoreCase
- Если этот параметр включён, имена сортируются без учёта регистра. Например, если задана сортировка по имени в алфавитном порядке и включён
IgnoreCase, файл Zeta будет показан после файла alfa (обратите внимание: файл GAMMA всегда будет показан перед файлом gamma). - IgnoreClient
- Этот параметр заставляет
mod_autoindexигнорировать все переменные запроса, переданные клиентом, включая порядок сортировки (подразумеваетSuppressColumnSorting). - NameWidth=[n | *]
- Ключевое слово
NameWidthпозволяет указать ширину столбца с именами файлов в байтах. -
-NameWidth(или отсутствие значения) позволяетmod_autoindexвычислить оптимальную ширину, но не более 20 байт. -
NameWidth=nзадаёт ширину столбца в n байт. -
NameWidth=*расширяет столбец до необходимой ширины. - ScanHTMLTitles
- Включает извлечение заголовка из HTML-документов при расширенном индексировании. Если описание файла не задано с помощью
AddDescription, httpd прочитает документ и извлечёт значение элементаtitle. Эта операция требует значительных ресурсов процессора и диска. - ShowForbidden
- Если параметр указан, Apache httpd будет показывать файлы, обычно скрытые, поскольку подзапрос вернул
HTTP_UNAUTHORIZEDилиHTTP_FORBIDDEN - SuppressColumnSorting
- Если параметр указан, Apache httpd не будет превращать заголовки столбцов расширенного списка файлов каталога в ссылки для сортировки. По умолчанию заголовки являются ссылками: при выборе заголовка список сортируется по значениям этого столбца. Однако аргументы строки запроса, добавленные к URL, по-прежнему будут учитываться. Это поведение регулируется параметром
IndexOptions IgnoreClient. - SuppressDescription
- Этот параметр скрывает описания файлов в расширенных списках. По умолчанию описания файлов не задаются, поэтому этот параметр позволит освободить 23 символа экранного пространства для других целей. Информацию о задании описания файла см. в разделе
AddDescription. Чтобы ограничить ширину столбца описания, см. также параметр индексированияDescriptionWidth. Этот параметр действует только в том случае, если также включёнFancyIndexing. - SuppressHTMLPreamble
- Если в каталоге действительно находится файл, указанный директивой
HeaderName, модуль обычно добавляет содержимое этого файла после стандартной преамбулы HTML (<html>,<head>, и так далее). ПараметрSuppressHTMLPreambleотключает это поведение, заставляя модуль начинать вывод с содержимого файла заголовка. В этом случае файл заголовка должен содержать соответствующие инструкции HTML. Если файл заголовка отсутствует, преамбула создаётся как обычно. Если также указана директиваReadmeNameи соответствующий файл существует, закрывающие теги </body></html> также не добавляются в вывод; предполагается, что вы, вероятно, поместите эти закрывающие теги в этот файл. - SuppressIcon
- Этот параметр скрывает значки в расширенных списках файлов. Совместное использование параметров
SuppressIconиSuppressRulesпозволяет получить корректный вывод HTML 3.2, спецификация которого запрещает использовать элементыimgиhrв блокеpre(используемом для форматирования расширенных списков файлов). - SuppressLastModified
- Этот параметр скрывает дату последнего изменения в расширенных списках файлов. Этот параметр действует только в том случае, если также включён
FancyIndexing. - SuppressRules
- Этот параметр скрывает горизонтальные линии (элементы
hr) в списках файлов каталогов. Совместное использование параметровSuppressIconиSuppressRulesпозволяет получить корректный вывод HTML 3.2, спецификация которого запрещает использовать элементыimgиhrв блокеpre(используемом для форматирования расширенных списков файлов). Этот параметр действует только в том случае, если также включёнFancyIndexing. - SuppressSize
- Этот параметр скрывает размеры файлов в расширенных списках. Этот параметр действует только в том случае, если также включён
FancyIndexing. - TrackModified
- Этот параметр возвращает значения
Last-ModifiedиETagдля отображаемого каталога в заголовке HTTP. Он допустим только в том случае, если операционная система и файловая система возвращают соответствующие результаты stat(). Некоторые системы Unix это поддерживают, как и тома JFS в OS2 и NTFS в Win32. Например, тома FAT в OS2 и Win32 этого не поддерживают. После включения этой функции клиент или прокси-сервер может отслеживать изменения списка файлов при выполнении запросаHEAD. Обратите внимание: некоторые операционные системы корректно отслеживают добавление и удаление файлов, но не отслеживают изменение размеров или дат файлов в каталоге. На всех платформах Unix изменение размера или даты существующего файла не обновит заголовокLast-Modified. Если это важно, не включайте этот параметр. - Type=тип содержимого MIME
- Ключевое слово
Typeпозволяет указать тип содержимого MIME для сгенерированной страницы. По умолчанию используется text/html.IndexOptions Type=text/plain
- UseOldDateFormat (Apache HTTP Server 2.4.26 и более поздних версий)
- Формат даты для поля
Last Modifiedбыл случайно изменён с"%d-%b-%Y %H:%M"на"%Y-%m-%d %H:%M"в версии 2.4.0. Установка этого параметра восстанавливает формат даты, использовавшийся в версии 2.2 и более ранних версиях. - VersionSort
- Ключевое слово
VersionSortзаставляет сортировать файлы с номерами версий в естественном порядке. Строки сортируются обычным образом, за исключением того, что последовательности цифр в имени и описании сравниваются по их числовому значению.Пример:
foo-1.7 foo-1.7.2 foo-1.7.12 foo-1.8.2 foo-1.8.2a foo-1.12
Если число начинается с нуля, оно считается дробным:
foo-1.001 foo-1.002 foo-1.030 foo-1.04
- XHTML
- Ключевое слово
XHTMLзаставляетmod_autoindexвыводить код XHTML 1.0 вместо HTML 3.2. Этот параметр действует только в том случае, если также включёнFancyIndexing.
- Инкрементальные параметры IndexOptions
-
Учитывайте, как обрабатываются несколько директив
IndexOptions.- Теперь несколько директив
IndexOptionsдля одного каталога объединяются. Результат следующей записи:<Directory "/foo"> IndexOptions HTMLTable IndexOptions SuppressColumnsorting </Directory>будет эквивалентен
IndexOptions HTMLTable SuppressColumnsorting
- Добавлен инкрементальный синтаксис (то есть добавление префиксов
+или-к ключевым словам).
При обнаружении ключевого слова с префиксом «+» или «-» оно применяется к текущим настройкам
IndexOptions(которые могли быть унаследованы от каталога более высокого уровня). Однако при обработке ключевого слова без префикса все унаследованные параметры и все накопленные к этому моменту инкрементальные настройки сбрасываются. Рассмотрим следующий пример:IndexOptions +ScanHTMLTitles -IconsAreLinks FancyIndexing IndexOptions +SuppressSize
В итоге получается то же самое, что и
IndexOptions FancyIndexing +SuppressSize, поскольку ключевое словоFancyIndexingбез префикса отменило предшествующие ему инкрементальные ключевые слова, но позволило снова накапливать их после себя.Чтобы безусловно задать
IndexOptionsдля определённого каталога, сбросив унаследованные настройки, указывайте ключевые слова без префиксов+или-. - Теперь несколько директив
Директива IndexOrderDefault
| Описание: | Задаёт порядок сортировки по умолчанию для индекса каталога |
|---|---|
| Синтаксис: | IndexOrderDefault Ascending|Descending Name|Date|Size|Description |
| По умолчанию: | IndexOrderDefault Ascending Name |
| Контекст: | конфигурация сервера, виртуальный хост, каталог, .htaccess |
| Переопределение: | Indexes |
| Статус: | Базовый |
| Модуль: | mod_autoindex |
Директива IndexOrderDefault используется вместе с параметром индексирования FancyIndexing. По умолчанию расширенные списки файлов каталогов отображаются в алфавитном порядке по имени файла; директива IndexOrderDefault позволяет изменить этот порядок отображения.
Директива IndexOrderDefault принимает два аргумента. Первый должен быть Ascending или Descending и задаёт направление сортировки. Второй аргумент должен быть одним из ключевых слов Name, Date, Size или Description и определяет основной ключ сортировки. Вторичный ключ — всегда имя файла в алфавитном порядке.
При необходимости можно запретить клиенту изменять порядок списка, добавив параметр индексирования SuppressColumnSorting, который удаляет ссылку для сортировки в заголовке столбца, а также параметр индексирования IgnoreClient, который запрещает вручную добавлять параметры сортировки в строку запроса и тем самым переопределять заданный порядок.
Директива IndexStyleSheet
| Описание: | Добавляет таблицу стилей CSS к индексу каталога |
|---|---|
| Синтаксис: | IndexStyleSheet url-path |
| Контекст: | конфигурация сервера, виртуальный хост, каталог, .htaccess |
| Переопределение: | Indexes |
| Статус: | Базовый |
| Модуль: | mod_autoindex |
Директива IndexStyleSheet задаёт имя файла, который будет использоваться в качестве таблицы стилей CSS для списка файлов.
IndexStyleSheet "/css/style.css"
Использование этой директивы вместе с IndexOptions HTMLTable добавляет в результирующий HTML ряд классов CSS. Всей таблице присваивается идентификатор CSS indexlist, а следующим частям списка назначаются соответствующие классы:
| Класс | Описание |
|---|---|
| tr.indexhead | Строка заголовка списка |
| th.indexcolicon and td.indexcolicon | Столбец значков |
| th.indexcolname and td.indexcolname | Столбец имён файлов |
| th.indexcollastmod and td.indexcollastmod | Столбец даты последнего изменения |
| th.indexcolsize and td.indexcolsize | Столбец размера файла |
| th.indexcoldesc and td.indexcoldesc | Столбец описания |
| tr.breakrow | Горизонтальная линия в нижней части таблицы |
| tr.odd and tr.even | Чётные и нечётные строки, отображаемые попеременно |
Директива ReadmeName
| Описание: | Имя файла, который будет добавлен в конец списка файлов |
|---|---|
| Синтаксис: | ReadmeName filename |
| Контекст: | конфигурация сервера, виртуальный хост, каталог, .htaccess |
| Переопределение: | Indexes |
| Статус: | Базовый |
| Модуль: | mod_autoindex |
Директива ReadmeName задаёт имя файла, который будет добавлен в конец списка файлов. Filename — имя включаемого файла, путь к которому считается относительно индексируемого расположения. Если Filename начинается с косой черты, как в примере 2, путь считается относительно DocumentRoot.
# Example 1 ReadmeName FOOTER.html
# Example 2 ReadmeName /include/FOOTER.html
Подробное описание этого поведения см. также в разделе HeaderName.
© 2018 The Apache Software Foundation
Licensed under the Apache License, Version 2.0.
https://httpd.apache.org/docs/2.4/en/mod/mod_autoindex.html