Нужна помощь с RewriteRule (платная)

P
На сайте с 25.05.2007
Offline
103
671

На хостинге все домены направлены в одну папку. То есть, вне зависимости, от того, открывается сайт site1.ru, site2.ru или site3.ru, всем выдается страница "publick_html/index.php"

Нужно в .htaccess прописать правила, чтобы для каждого сайта использовалась своя папка, лежащая в publick_html.

Т.е. для сайта site1.ru открывалась "publick_html/site1/index.php", для сайта site2.ru открывалась "publick_html/site2/index.php" и т.д.

Ну и, разумеется, все внутрение страницы должны работать по тому же правилу, то есть

siteXXX.ru/blabla.html открывалась из "publick_html/siteXXX/blabla.html"

Моя благодарность за помощь будет выражена в wmz.

coolakov.ru/tools (http://coolakov.ru/tools/): определение конкурентов (http://coolakov.ru/tools/most_promoted/), кластеризация запросов (http://coolakov.ru/tools/razbivka/) и т.д.
[umka]
На сайте с 25.05.2008
Offline
456
#1

RewriteCond %{HTTP_HOST} ([a-z0-9\-]+\.[a-z]+)$
RewriteRule (.*) /%1/$1 [QSA]

p.s. куда отправлять денежку?

Лог в помощь!
P
На сайте с 25.05.2007
Offline
103
#2
[umka:
]RewriteCond %{HTTP_HOST} ([a-z0-9\-]+\.[a-z]+)$
RewriteRule (.*) /%1/$1 [QSA]

Не, ваш вариант кроме 400 ничего не дает.

Попытался сделать примерно так:

RewriteCond %{HTTP_HOST} (site1\.ru+)$

RewriteRule (.*) /site1/$1 [QSA]

не работает, та же четырехсотая ошибка

[umka]
На сайте с 25.05.2008
Offline
456
#3
pimandr:
Не, ваш вариант кроме 400 ничего не дает.

Попытался сделать примерно так:
RewriteCond %{HTTP_HOST} (site1\.ru+)$
RewriteRule (.*) /site1/$1 [QSA]

не работает, та же четырехсотая ошибка

Интересно, почему у меня мой вариант работает :)

Файлики сайтов должны размещаться в директориях с названиями "site1.ru", "site2.ru" и т.д.

Т.е. в директории DocumentRoot, в которой лежит .htaccess, в ней же создайте эти директории и залейте в них файлики.

P
На сайте с 25.05.2007
Offline
103
#4

Мне тоже интересно.

Четырехсотая ошибка была потому, что у меня уже лежал в корне .htaccess и там было несколько правил. Удалил их все, и теперь 500 ошибку выдает

UPD Вопрос решен, помог firefox19. За что им получено 5wmz.

Код получился следующий:

RewriteCond %{REQUEST_URI} !^\/site1\.ru\/

RewriteCond %{HTTP_HOST} ^(www\.)?site1.ru

RewriteRule ^(.*)$ /site1\.ru/$1

Ну и т.д., для каждого из доменов заменяем 'site1' на соответствующие домен-папку. Папка должна называться site1.ru

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий