Loading...
Обучение/Помощь новичкам | Вопрос по настройке .htaccess
Опции Options Indexes и Options All Indexes необходимы для того, чтобы разрешить или запретить листинг каталогов сайтов. Приставка All означает, что эта опция будет действовать на все каталоги и папки. То есть настройка Options All не является гибкой для отдельных директорий, а сразу для всех, которые подчиняются данному файлу htaccess. Размещать файл htaccess с настройкой Options All следует в корне сайта, либо в одном из ключевых разделов, доступ к папкам которого вы хотите отключить.

Команды опции Options All определяются знаком перед словом Indexes. Если после Options All и сразу перед словом Indexes стоит минус, то все директивы нельзя будет просматривать. То есть только те директивы которые находятся внутри каталога с файлом htaccess, в котором прописано Options All -Indexes. Если же вы хотите, чтобы все директории можно было просматривать, тогда после Options All и сразу перед словом Indexes пропишите плюс «+». Только учтите, что такая настройка Options All превратит ваш сайт в пачку каталогов с открытым листингом файлов. С виду это будет напоминать FTP-сервер с открытой файловой системой. Но иногда вебмастерам необходимо так сделать, чтобы без лишних слов и оформления страницы предоставить пользователям доступ к определенным файлам.
Практичное применение функции Options для отдельных папок сводится к тому, чтобы лишить ваш сайт ошибки 403. Лучше для индексации, чтобы на странице появлялся листинг файлов, чем надпись о HTTP-ошибке. А возникает ошибка в результате того, что в каталоге не обнаружено индексного файла. Чтобы закрыть этот вопрос, вам следует прописать в htaccess опцию Options +Indexes. После того, как вы добавите файл дополнительных конфигураций с этой строчкой в одну из директорий сайта, в случае отсутствия в ней документа index, будет открываться листинг папки со списком файлов внутри.
Учтите, что опция Options Indexes с плюсом или минусом не всегда будет действовать на все папки, находящиеся внутри каталога с htaccess. Для этого необходимо скорректировать некоторые настройки на сервере Apache. В частности, нужно поставить опцию AllowOverride All. Обычно, она установлена по умолчанию, но иногда вместо All бывает прописано None, что ограничивает действие Options Indexes только до текущей папки с файлом htaccess.

Также стоит обратить внимание и на то, что опция Options Indexes напрямую связана с настройкой строки DirectoryIndex внутри файла htaccess. Опция DirectoryIndex нужна для того, чтобы определить индексный файл внутри папки. Команда DirectoryIndex также действует на внутренние каталоги папки, в которой размещена. Суть опции DirectoryIndex в том, что она определяет файлы, которые необходимо считать индексными.

Когда вы запрашиваете определенный каталог, заходя на сайт через URL, вы не прописываете индексный файл, который следует открыть. По умолчанию, сначала открывается файл index формата php, потом html-формата и в последнюю очередь — index с разрешением htm. Как известно, если этих файлов в папке нет, то сайт перебрасывает вас на страницу с ошибкой 403. Если у вас активирована опция Options +Indexes, то вы увидите листинг каталога вместо ошибки. Но благодаря DirectoryIndex вы можете сделать так, чтобы пользователь попадал на другую страницу.

Внутри команды DirectoryIndex нужно лишь прописать файлы, которые сайт должен считать индексными для данного каталога. Если первым в DirectoryIndex вы пропишите файл index формата php, то он будет считаться приоритетнее всех последующих. Но нет смысла прописывать файл index формата php первым в DirectoryIndex, а после него указывать два последующих индексных документа, потому что эта настройка и без того активирована по умолчанию. А вот если в конце команды DirectoryIndex после файла php и всех остальных вы пропишите mainpage.html, то в случае отсутствия «индексов» откроется главная. Это лишь один из вариантов, как можно использовать опцию DirectoryIndex у себя на ресурсе. К сожалению, мало кто пользуется этой командой, потому у вас есть все шансы стать первооткрывателем возможностей данной опции.
EagleX (07.08.2018 в 21:47)
Опции Options Indexes и Options All Indexes необходимы для того, чтобы разрешить или запретить листинг каталогов сайтов. Приставка All означает, что эта опция будет действовать на все каталоги и папки. То есть настройка Options All не является гибкой для отдельных директорий, а сразу для всех, которые подчиняются данному файлу htaccess. Размещать файл htaccess с настройкой Options All следует в корне сайта, либо в одном из ключевых разделов, доступ к папкам которого вы хотите отключить.

Команды опции Options All определяются знаком перед словом Indexes. Если после Options All и сразу перед словом Indexes стоит минус, то все директивы нельзя будет просматривать. То есть только те директивы которые находятся внутри каталога с файлом htaccess, в котором прописано Options All -Indexes. Если же вы хотите, чтобы все директории можно было просматривать, тогда после Options All и сразу перед словом Indexes пропишите плюс «+». Только учтите, что такая настройка Options All превратит ваш сайт в пачку каталогов с открытым листингом файлов. С виду это будет напоминать FTP-сервер с открытой файловой системой. Но иногда вебмастерам необходимо так сделать, чтобы без лишних слов и оформления страницы предоставить пользователям доступ к определенным файлам.
Практичное применение функции Options для отдельных папок сводится к тому, чтобы лишить ваш сайт ошибки 403. Лучше для индексации, чтобы на странице появлялся листинг файлов, чем надпись о HTTP-ошибке. А возникает ошибка в результате того, что в каталоге не обнаружено индексного файла. Чтобы закрыть этот вопрос, вам следует прописать в htaccess опцию Options +Indexes. После того, как вы добавите файл дополнительных конфигураций с этой строчкой в одну из директорий сайта, в случае отсутствия в ней документа index, будет открываться листинг папки со списком файлов внутри.
Учтите, что опция Options Indexes с плюсом или минусом не всегда будет действовать на все папки, находящиеся внутри каталога с htaccess. Для этого необходимо скорректировать некоторые настройки на сервере Apache. В частности, нужно поставить опцию AllowOverride All. Обычно, она установлена по умолчанию, но иногда вместо All бывает прописано None, что ограничивает действие Options Indexes только до текущей папки с файлом htaccess.

Также стоит обратить внимание и на то, что опция Options Indexes напрямую связана с настройкой строки DirectoryIndex внутри файла htaccess. Опция DirectoryIndex нужна для того, чтобы определить индексный файл внутри папки. Команда DirectoryIndex также действует на внутренние каталоги папки, в которой размещена. Суть опции DirectoryIndex в том, что она определяет файлы, которые необходимо считать индексными.

Когда вы запрашиваете определенный каталог, заходя на сайт через URL, вы не прописываете индексный файл, который следует открыть. По умолчанию, сначала открывается файл index формата php, потом html-формата и в последнюю очередь — index с разрешением htm. Как известно, если этих файлов в папке нет, то сайт перебрасывает вас на страницу с ошибкой 403. Если у вас активирована опция Options +Indexes, то вы увидите листинг каталога вместо ошибки. Но благодаря DirectoryIndex вы можете сделать так, чтобы пользователь попадал на другую страницу.

Внутри команды DirectoryIndex нужно лишь прописать файлы, которые сайт должен считать индексными для данного каталога. Если первым в DirectoryIndex вы пропишите файл index формата php, то он будет считаться приоритетнее всех последующих. Но нет смысла прописывать файл index формата php первым в DirectoryIndex, а после него указывать два последующих индексных документа, потому что эта настройка и без того активирована по умолчанию. А вот если в конце команды DirectoryIndex после файла php и всех остальных вы пропишите mainpage.html, то в случае отсутствия «индексов» откроется главная. Это лишь один из вариантов, как можно использовать опцию DirectoryIndex у себя на ресурсе. К сожалению, мало кто пользуется этой командой, потому у вас есть все шансы стать первооткрывателем возможностей данной опции.

Что то не то оно, проверил
________
посл. ред. 08.08.2018 в 20:13; всего 5 раз(а); by SNEG
Онлайн: 7
Время:
Gen. 0.098
(c) Bym.Guru 2010-2026