Вернуться   Форум об интернет-маркетинге > >
Ответ
 
Опции темы
Старый 03.04.2011, 12:04   #1
Аспирант
 
Аватар для sanich_
 
Регистрация: 24.05.2008
Сообщений: 167
Репутация: -9263

По умолчанию .htaccess перенаправление на поддомен

Доброго всем дня.

Задача сделать из подпапок сайта поддомены, без физического перемещения подпапок на поддомены.
Средствами .htaccess

Пока все тестирую на локальном сайте денвера.
Есть сайт http://test.loc в нем папка bbs, нужно чтобы при вводе

1. http://bbs.test.loc/ открывалось содержимое папки http://test.loc/bbs/
2. При наборе адреса http://test.loc/bbs/.... происходила переадресация на http://bbs.test.loc/....

Что я сделал:

1. В корень http://test.loc/ поместил файл .htaccess с содержимым
Код:
RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_HOST} ^bbs\.test\.loc$
RewriteCond %{REQUEST_URI} !/bbs/
RewriteRule ^(.*)$ bbs/$1 [L]

#dnwr_host bbs.test.loc
Результат: при наборе http://bbs.test.loc/ открывается содержимое папки папки http://test.loc/bbs/

2. В http://test.loc/bbs/ поместил файл .htaccess с содержимым:


Код:
Redirect 301 / http://bbs.test.loc/
Результат: При наборе http://test.loc/bbs/... происходит переадресация на http://bbs.test.loc/bbs/....

а надо http://bbs.test.loc/....

Вероятно в первом файле .htaccess что то не так, но не пойму что. Помогите разобраться.
sanich_ вне форума   Ответить с цитированием

Реклама
Старый 03.04.2011, 14:53   #2
Хелпзонович
Кандидат наук
 
Аватар для Хелпзонович
 
Регистрация: 15.06.2005
Адрес: Україна.Боярка-сити
Сообщений: 455
Репутация: 35644
Отправить сообщение для Хелпзонович с помощью ICQ

По умолчанию Re: .htaccess перенаправление на поддомен

Не знаю, как на денвере, а на апаче у меня вот так работает

RewriteCond %{HTTP_HOST} ^bbs.test.loc$
RewriteCond %{REQUEST_URI} !^/bbs
RewriteRule ^(.*)$ /bbs/$1 [L,QSA]
Хелпзонович вне форума   Ответить с цитированием
Старый 03.04.2011, 15:17   #3
siv1987
Академик
 
Аватар для siv1987
 
Регистрация: 02.04.2009
Сообщений: 6,550
Репутация: 641820

По умолчанию Re: .htaccess перенаправление на поддомен

В своем примере выше добавить

RewriteCond %{HTTP_HOST} ^test.loc
RewriteRule bbc/(.*)$ http://bbc.test.loc/$1 [R=301,L]
siv1987 вне форума   Ответить с цитированием
Старый 03.04.2011, 17:36   #4
sanich_
Аспирант
 
Аватар для sanich_
 
Регистрация: 24.05.2008
Сообщений: 167
Репутация: -9263

ТопикСтартер Re: .htaccess перенаправление на поддомен

Цитата:
Сообщение от Хелпзонович Посмотреть сообщение
Не знаю, как на денвере, а на апаче у меня вот так работает

RewriteCond %{HTTP_HOST} ^bbs.test.loc$
RewriteCond %{REQUEST_URI} !^/bbs
RewriteRule ^(.*)$ /bbs/$1 [L,QSA]
А переадресация из папки на поддомен тоже есть?

т.е. набираешь http://test.loc/bbs/ должно перевести на http://bbs.test.loc/

????

sanich_ добавил 03.04.2011 в 18:39
Цитата:
Сообщение от siv1987 Посмотреть сообщение
В своем примере выше добавить

RewriteCond %{HTTP_HOST} ^test.loc
RewriteRule bbc/(.*)$ http://bbc.test.loc/$1 [R=301,L]
Куда добавить? В какой .htaccess? У меня из 2.

И полный текст .htaccess плиз

Последний раз редактировалось sanich_; 03.04.2011 в 17:39.. Причина: Добавлено сообщение
sanich_ вне форума   Ответить с цитированием
Старый 03.04.2011, 17:55   #5
siv1987
Академик
 
Аватар для siv1987
 
Регистрация: 02.04.2009
Сообщений: 6,550
Репутация: 641820

По умолчанию Re: .htaccess перенаправление на поддомен

Цитата:
Куда добавить? В какой .htaccess? У меня из 2.
Тот который первый.

Цитата:
И полный текст .htaccess плиз
Выше своих реврайтов, то есть ниже rewritebase, какой еще полный текст?
siv1987 вне форума   Ответить с цитированием
Старый 03.04.2011, 19:05   #6
sanich_
Аспирант
 
Аватар для sanich_
 
Регистрация: 24.05.2008
Сообщений: 167
Репутация: -9263

ТопикСтартер Re: .htaccess перенаправление на поддомен

Цитата:
Сообщение от siv1987 Посмотреть сообщение
Тот который первый.


Выше своих реврайтов, то есть ниже rewritebase, какой еще полный текст?
Итак. В корне http://test.loc/
файл .htaccess с содержимым:

Код:
RewriteEngine on
RewriteBase /

RewriteCond %{HTTP_HOST} ^test.loc
RewriteRule bbc/(.*)$ http://bbc.test.loc/$1 [R=301,L]

RewriteCond %{HTTP_HOST} ^bbs.test.loc$
RewriteCond %{REQUEST_URI} !^/bbs
RewriteRule ^(.*)$ /bbs/$1 [L,QSA]

#dnwr_host bbs.test.loc
Перегружаю web сервер

Запрашиваю урл: http://bbs.test.loc/ браузер сообщает:
Неверное перенаправление на странице

Firefox определил, что сервер перенаправляет запрос на этот адрес таким образом, что он никогда не завершится.


Запрашиваю http://test.loc/bbs/ таже ошибка,т.е. цыкл получается.

Где ошибка?

Код второго .htaccess, который внутри папки /bbs/
Код:
Redirect 301 / http://bbs.test.loc/
sanich_ вне форума   Ответить с цитированием
Старый 03.04.2011, 19:34   #7
siv1987
Академик
 
Аватар для siv1987
 
Регистрация: 02.04.2009
Сообщений: 6,550
Репутация: 641820

По умолчанию Re: .htaccess перенаправление на поддомен

Цитата:
Код второго .htaccess, который внутри папки /bbs/
Никакой код там не нужен, и вообще htaccess из той папки удалить.
siv1987 вне форума   Ответить с цитированием
Старый 03.04.2011, 19:52   #8
sanich_
Аспирант
 
Аватар для sanich_
 
Регистрация: 24.05.2008
Сообщений: 167
Репутация: -9263

ТопикСтартер Re: .htaccess перенаправление на поддомен

Цитата:
Сообщение от siv1987 Посмотреть сообщение
Никакой код там не нужен, и вообще htaccess из той папки удалить.
Уже хорошо. Из вложенной папки bbs удалил htaccess

Итак. В корне http://test.loc/
файл .htaccess с содержимым:

Код:
RewriteEngine on
RewriteBase /

RewriteCond %{HTTP_HOST} ^test.loc
RewriteRule bbc/(.*)$ http://bbc.test.loc/$1 [R=301,L]

RewriteCond %{HTTP_HOST} ^bbs.test.loc$
RewriteCond %{REQUEST_URI} !^/bbs
RewriteRule ^(.*)$ /bbs/$1 [L,QSA]

#dnwr_host bbs.test.loc
1. Запрашиваю урл: http://bbs.test.loc/ открывается содержимое папки папки bbs/, урл не меняется и это правильно.

2. Запрашиваю урл: http://test.loc/bbs/ открывается содержимое папки папки bbs/, урл не меняется и это не правильно. Т.е. меня должно перенаправить на http://bbs.test.loc/

Как это сделать?
sanich_ вне форума   Ответить с цитированием
Старый 03.04.2011, 20:07   #9
siv1987
Академик
 
Аватар для siv1987
 
Регистрация: 02.04.2009
Сообщений: 6,550
Репутация: 641820

По умолчанию Re: .htaccess перенаправление на поддомен

Цитата:
2. Запрашиваю урл: http://test.loc/bbs/
Потому что у меня там не bbs а /bbc
siv1987 вне форума   Ответить с цитированием
Старый 03.04.2011, 20:17   #10
sanich_
Аспирант
 
Аватар для sanich_
 
Регистрация: 24.05.2008
Сообщений: 167
Репутация: -9263

ТопикСтартер Re: .htaccess перенаправление на поддомен

Цитата:
Сообщение от siv1987 Посмотреть сообщение
Потому что у меня там не bbs а /bbc
Отлично, заработало, как надо, Спасибо! Пол дня не мог найти решение.
sanich_ вне форума   Ответить с цитированием
Ответ



Опции темы

Быстрый переход


Регистрация Справка Календарь Поддержка Все разделы прочитаны