поддомены для пользователей (mod_rewrite)

Статус
В этой теме нельзя размещать новые ответы.

silent9

Постоялец
Регистрация
7 Июн 2008
Сообщения
136
Реакции
11
Хочу сделать для каждого пользователя свой поддомен,
чтобы он ссылался на subdomain/user.html
папки subdomain и файла user.html визически нет на сервере
все запросы идут через index.php

RewriteCond %{HTTP_HOST} !^(www\.)?domain.ru [NC]
RewriteCond %{HTTP_HOST} ^(.*).domain.ru [NC]
RewriteRule ^$ %{HTTP_HOST} [C]
RewriteRule ^([^.]+)\.[^.] subdomain/user.html?login=$1 [NC]

что нужно подправить?
при наборе адреса user.domain.ru - выдает ошибку 404
The requested URL /index.php was not found on this server.

Добавлено через 30 минут
корень домена domain.ru
/www/domain.ru

по логам обращение к
/www/domain.ru/user

папки user естественно нет
 
еще нужно настроить апач, прописать днс *.domen.ru, набери в поиск гугля создание виртуальных поддоменов много инфы про это
 
на обработку 404 повесь скрипт, который выдает переменные апача - будет видно чего не так с реврайтом. да хоть phpinfo() прицепить в него можно.
 
еще нужно настроить апач, прописать днс *.domen.ru, набери в поиск гугля создание виртуальных поддоменов много инфы про это

все уже настроено все дело только в mod_rewrite
 
Virtual User Hosts

Переводит запросы вида Для просмотра ссылки Войди или Зарегистрируйся в /home/username/....


Код:
RewriteEngine on
RewriteCond   %{HTTP_HOST}                 ^www\.[^.]+\.host\.com$
RewriteRule   ^(.+)                        %{HTTP_HOST}$1          [C]
RewriteRule   ^www\.([^.]+)\.host\.com(.*) /home/$1$2
 
вопрос на засыпку
если в последней строке посылают на
то как же в итоге запрос попадет на index.php ?

RewriteEngine on

RewriteCond %{HTTP_HOST} ^([^\.]+)\.someblog\.com$ [NC]
RewriteCond %{HTTP_HOST} !^www\.someblog\.com$ [NC]
RewriteRule ^(.*)$ index.php?user=%1 [L,QSA]

После этого, при обращении к саб-домену, например, bob.someblog.com вы получаете
переменную $user='bob'; в index.php, а дальше все просто
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху