Рассмотрите следующую проблему, пожалуйста. У меня domain.tld с иерархическими поддоменов, как следующее:mod_rewrite: иерархические поддомены в иерархические подкаталоги
a.domain.tld
b.a.domain.tld
c.b.a.domain.tld
... etc.
Существует также гипотетическая структура каталогов в веб-корень:
/foo
/a.
/a./b.
/a./b./bar
/a./b./c.
... etc.
Я хотел бы добиться такого переписывания, что бы заставить Apache обслуживать каталоги таким образом, как вы видите ниже.
a.domain.tld --> /a.
b.a.domain.tld --> /a./b.
c.b.a.domain.tld --> /a./b./c.
... etc.
Каталоги, не имеющие обратного точечного символа, будут вести себя как обычные подкаталоги.
domain.tld/foo/ --> /foo
a.b.domain.tld/bar --> /a./b./bar
Я не могу использовать mod_vhost_alias и был бы рад, если решение было достижимо только с помощью mod_rewrite. Возможно ли такое переписывание?
Спасибо за все ваши советы.
-
NKD
Здравствуйте. Спасибо за быстрый ответ. Я знаю RewriteMap. Я бы предпочел не использовать его, если это возможно. Это? – nkd
Нет встроенного средства mod_rewrite, которое разбивает, реверсирует, а затем соединяется. –
Спасибо. Значит, мне нужно написать 10 наборов правил для, скажем, 10 уровней поддоменов, так? Может ли кто-нибудь показать мне, как сделать это правильно, скажем, первые два уровня (я думаю, что я буду следующим 8 легко, я думаю). Иерархия не будет перекрывать около 10 или 12 уровней. – nkd