Назад | Перейти на главную страницу

Одинаковый индекс для всех (под) каталогов?

Мне было интересно, можно ли написать какую-нибудь страницу .htaccess, которая заставляет сервер использовать файл index.php в ОДНОМ каталоге в качестве индексного файла для каждого каталога / подкаталога на моем сервере, вместо того, чтобы размещать точно такой же индекс. php в более чем 200 каталогах. Если мое описание неясно, я имею в виду, по сути, следующее: /files/index.php должен использоваться в качестве индекса, например, для / files / morefiles, а также индекса для всех каталогов и подкаталогов внутри / files /, даже если сами эти каталоги не имеют индексного файла. Заранее всем спасибо.

РЕДАКТИРОВАТЬ: файл php генерирует другой вывод в зависимости от каталога; Чтобы быть конкретным, он перечисляет содержимое текущего каталога, если установлен определенный файл cookie. Так что, к сожалению, перезапись URL не работает.

Самым простым будет простой .htaccess в 'основном' каталоге:

RewriteCond %{REQUEST_FILENAME} -d 
RewriteRule ^(*.)$ index.php [QSA]

RewriteRule (^|/)?index.php index.php [QSA]

Если вам нужно переключить рабочий каталог, в index.php:

<?php
   chdir(realpath(dirname($_SERVER['DOCUMENT_ROOT'].parse_url($_SERVER['REQUEST_URI'],PHP_URL_PATH))));
?>

Возможно, с некоторыми проверками, находитесь ли вы все еще в каталоге you / files или ниже.

Просто переписать каждый путь, который заканчивается / в index.php.

Что-то такое:

RewriteBase /files
RewriteRule /$ index.php