Первый раз постер.Очень новый для mod_rewrite.Я на общем сервере, и контекст этой проблемы связан с виртуальным каталогом под моей учетной записью root.
Домен (domain.tld) будет иметь подкаталоги, представляющие годовые мини-сайты статических файлов .html.Имена подкаталогов (гггг) будут иметь четырехзначный год (например, «2010»).
Я хочу, чтобы любой вызов на domain.tld/yyyy/file.html
отображался как yyyy.domain.tld/file.html
в адресной строке браузера, и (конечно же,) для правильной загрузки страницы.
Я уже заставляю сбросить «www», используя…
RewriteCond %{HTTP_HOST} ^www\.domain\.tld [NC]
RewriteRule (.*) http://domain.tld/$1 [R=301,L]
Пока все хорошо.
Но что бы я ни пыталсяпосле этого я не могу заставить поддомен переместиться в начало домена.
Вот один из более сложных примеров, которые я пробовал (без сомнения, неправильно)…
RewriteCond %{HTTP_HOST} ^domain\.tld/([0-9]+)/([a-z-]+)\.html [NC]
RewriteRule (.*) %1.domain.tld/%2.html [NC]
Это ничего не нарушает (что я могу сказать), но и не делает то, что я хочу.Т.е., если я наберу yyyy.domain.tld
, я увижу yyyy.domain.tld
в адресной строке, а навигация по нему даст мне yyyy.domain.tld/file.html
и т. Д. Отлично.Но если также набрать domain.tld/yyyy
, я посмотрю domain.tld/yyyy
и т. Д., Но я не хочу, чтобы люди это видели.Он не перенаправляет и не маскирует, или псевдоним, или как вы его называете.
Возможно ли вообще заставить один взгляд на другого так?Должен ли я работать с DNS вместо этого?
Заранее спасибо!