PHP в деталях



         

По следам виртуальных директорий, или как можно настроить VirtualHost - часть 6


# если Вы используете достаточно длинные (с большим количеством вложенных поддиректорий)

# URL`ы, ведь на каждый запрос она будет производить разложение на составляющие

# и анализ каждой из них, по вышеописанным правилам, поэтому,

# если вам нужны виртуальные сайты с виртуальными директориями в пределах сайта

# (что это такое - см. ниже :), то только тогда "раскоментарьте" это правило!

# а тут оседают все остальные обращения к сайту

RewriteRule ^ /index.html [L]

# Принцип работы:

# 1. Если то что просят файл - всё остаётся как есть.

# 2. Если то что просят директория, и там есть DefaultIndex файл, то управление на него.

# 3. Если дошли до этого шага? значит это и есть "виртуальная" директория -

# теперь нужно теперь найти обработчик для неё. Можно задать его жестко,

# н.п. как DefaultIndex-файл, находящийся в корне сайта,

# но можно добавить нашему ReWrite`у немного интеллекта -

# пусть он попытается подняться вверх по предполагаемому дереву каталогов,

# и там поискать, по правилу п/п 1 и 2, т.е. зациклим анализ;

# 4. Если подниматься больше некуда (или мы и находились в корне), то данную

# "виртуальную" директорию будет обрабатывать DefaultIndex-файл корня сайта.

#

# В итоге мы получим сайт с "виртуальными" директориями, но если часть структуры

# сайта построена физически, то это будет как бы сайт в сайте, т.е. если URL выглядит как

# /test/бла/бла/, и директория /test/ физическая и в ней есть DefaultIndex-файл,

# то именно он получит управление, а не корневой DefaultIndex-файл.

#

# Конечно для Ваших задач может понадобиться

# другое решение - ReWrite наверняка с ним справится! :)

</IfModule>

# Если уж тема безопасности затронута, то хотелось бы упомянуть ещё несколько моментов:

php_admin_flag safe_mode On # - safe_mode в PHP это тот режим, который практически полностью позволяет исключить

# возможность несанкционированного доступа пользователя к ресурсам доступ к которым

# (хотя бы даже и только на чтение) имеет PHP, запущенный как модуль Apache:




Содержание  Назад  Вперед