Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Apache

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: .htaccess - перенаправление (или что-то вроде того)
 
 автор: FBI   (27.11.2010 в 16:58)   письмо автору
 
 

Добрый вечер.
Подскажите, пожалуйста, возможно ли организовать следующее...

Имеется сайт - domain.tld
А также имеется домен - domain_2.tld
Необходимо чтобы при заходе на domain_2.tld отображался сайт и вся информация с domain.tld, но в адресной строке браузера был domain_2.tld ... и еще проблема в том, чтобы и переменные POST, GET передавались.

Создать алиас для domain.tld - не вариант.
Создать DNS зону для domain_2.tld - тоже не вариант.

Необходим вариант с использованием PHP или .htaccess

Заранее спасибо за помощь.

  Ответить  
 
 автор: FBI   (28.11.2010 в 05:36)   письмо автору
 
   для: FBI   (27.11.2010 в 16:58)
 

Предполагаю что можно сделать как-то так:

RewriteEngine on
Options +FollowSymlinks
RewriteBase /
RewriteCond %{HTTP_HOST} ^http://www\.domain_2\.tld
RewriteCond %{DOCUMENT_ROOT} !^/home/domain.tld/www/
RewriteRule (.*) /home/domain.tld/www/$1 [L]


Но так не работает, (500 - Внутренняя ошибка сайта). может кто-то поправит.. или предложит свой вариант?

  Ответить  
 
 автор: FBI   (29.11.2010 в 11:02)   письмо автору
 
   для: FBI   (27.11.2010 в 16:58)
 

Ну что? Помогите кто-нибудь х(.

  Ответить  
 
 автор: Trianon   (29.11.2010 в 11:40)   письмо автору
 
   для: FBI   (29.11.2010 в 11:02)
 

Может сразу https ?

Бог поможет.

  Ответить  
 
 автор: FBI   (29.11.2010 в 11:50)   письмо автору
 
   для: Trianon   (29.11.2010 в 11:40)
 

Ндамм.. это не лечиться.. xD

  Ответить  
 
 автор: Trianon   (29.11.2010 в 12:22)   письмо автору
 
   для: FBI   (29.11.2010 в 11:50)
 

Окей.

Допустим, я оказался груб (несмотря на попытку сформулировать ответ в возможно более мягкой форме) и недальновиден.
Не учел, что
а) оба домена принадлежат Вам и
б) оба домена размещены на одном физическом http-сервере.
в) религия не позволяет применять алиасы имен.

Но ведь Вы, согласитесь, тоже могли бы более подробно расписать эти, мягко говоря, причудливые условия задачи?

Странное дело... если о существовании аксиомы "гадости делать нехорошо" люди с детства в основной массе еще вспоминают хоть иногда, то о том, что просить научить делать гадости за здорово живешь это как-то ну несовсем комильфо чтоли, забыли напрочь. Или это только некоторые посетители данного портала такие нравственно альтернативные?

Всё, можете начинать лечить Можете не начинать:))

  Ответить  
 
 автор: FBI   (29.11.2010 в 14:12)   письмо автору
 
   для: Trianon   (29.11.2010 в 12:22)
 

Вероятно я поступил глупо, когда решил не писать о том что оба домена мои и находятся на одном сервере, но я лишь рассчитывал что люди будут обращать внимание на указанные мною относительные пути х).
Спустя сутки я все таки хотел добавить информацию о домене и сервере, но что-то так был занят файлом .htaccess, что прошел весь день и снова никаких результатов.

И снова жду и надеюсь что кто-то мне расскажет, в чем я допустил ошибку х(:

RewriteEngine on
Options +FollowSymlinks
RewriteBase /
RewriteCond %{HTTP_HOST} ^http://domain_2\.tld
RewriteCond %{DOCUMENT_ROOT} !^/home/domain.tld/www/
RewriteRule (.*) /home/domain.tld/www/$1 [L]


При переходе выдает ошибку 500.

  Ответить  
 
 автор: shatun2007   (29.11.2010 в 12:04)   письмо автору
 
   для: FBI   (27.11.2010 в 16:58)
 

Предложу свое решение этого вопроса. Не скажу, что оно единственно верное и оптимальное, но у меня работает.

Во-первых, нужно указать у Вашего регистратора NS Вашего сервера-алиаса (или нескольких), где хостится основной сайт.
Во-вторых, прописать в .htaccess следующее:

RewriteEngine On
Options +FollowSymLinks
# Это необязательно - редиректит на сайт с обязательной приставкой www.
RewriteCond %{HTTP_HOST} ^site.ru(.*)
RewriteRule ^(.*)$ http://www.site.ru/$1 [R=301,L]

# Собственно то, что Вам требуется
# Редирект сайта, набранного без www
RewriteCond %{HTTP_HOST} ^site.com(.*)
RewriteRule ^(.*)$ http://www.site.ru/$1 [R=301,L]
# Редирект сайта, набранного c www
RewriteCond %{HTTP_HOST} ^www.site.com(.*)
RewriteRule ^(.*)$ http://www.site.ru/$1 [R=301,L]

* site.ru - это основной сайт, site.com - алиас, впрочем можете сколько угодно создавать алиасов -
просто пропишите последние 4 правила для каждого домена.

  Ответить  
 
 автор: FBI   (29.11.2010 в 14:14)   письмо автору
 
   для: shatun2007   (29.11.2010 в 12:04)
 

Хороший вариант, но ведь это обычное перенаправление на другой сайт. А мне необходимо чтобы перенаправление всех запросов было внутренним, и в адресной строке браузера ничего не изменялось, т.е. оставался все тот же domain_2.tld

  Ответить  
 
 автор: shatun2007   (29.11.2010 в 18:14)   письмо автору
 
   для: FBI   (29.11.2010 в 14:14)
 

У меня это перенаправление работает именно так, как Вам нужно.
Пусть сайт site.ru - основной и, например, site.com, сайт.рф - алиасы. Что бы я не набрал в адресной строке (site.com, site.ru, сайт.рф), выдается содержимое site.ru, а в адресной строке остается набранное, например, сайт.рф.

Вероятно, у меня так работает, потому что я еще сделал прилинковку доп. доменов у хостера к папке основного сайта...

  Ответить  
 
 автор: ximik777   (11.03.2011 в 12:06)   письмо автору
 
   для: shatun2007   (29.11.2010 в 18:14)
 

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} !^www.xxx.ru$
RewriteRule (.*) http://www.xxx.ru/$1 [R=301,L]

Если хост не www.xxx.ru то перенаправляем на www.xxx.ru + сохраняем GET запрос. Так что страницы будут работать.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования