|
|
|
| Добрый вечер.
Подскажите, пожалуйста, возможно ли организовать следующее...
Имеется сайт - domain.tld
А также имеется домен - domain_2.tld
Необходимо чтобы при заходе на domain_2.tld отображался сайт и вся информация с domain.tld, но в адресной строке браузера был domain_2.tld ... и еще проблема в том, чтобы и переменные POST, GET передавались.
Создать алиас для domain.tld - не вариант.
Создать DNS зону для domain_2.tld - тоже не вариант.
Необходим вариант с использованием PHP или .htaccess
Заранее спасибо за помощь. | |
|
|
|
|
|
|
|
для: 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
(27.11.2010 в 16:58)
| | Ну что? Помогите кто-нибудь х(. | |
|
|
|
|
|
|
|
для: FBI
(29.11.2010 в 11:02)
| | Может сразу https ?
Бог поможет. | |
|
|
|
|
|
|
|
для: Trianon
(29.11.2010 в 11:40)
| | Ндамм.. это не лечиться.. xD | |
|
|
|
|
|
|
|
для: FBI
(29.11.2010 в 11:50)
| | Окей.
Допустим, я оказался груб (несмотря на попытку сформулировать ответ в возможно более мягкой форме) и недальновиден.
Не учел, что
а) оба домена принадлежат Вам и
б) оба домена размещены на одном физическом http-сервере.
в) религия не позволяет применять алиасы имен.
Но ведь Вы, согласитесь, тоже могли бы более подробно расписать эти, мягко говоря, причудливые условия задачи?
Странное дело... если о существовании аксиомы "гадости делать нехорошо" люди с детства в основной массе еще вспоминают хоть иногда, то о том, что просить научить делать гадости за здорово живешь это как-то ну несовсем комильфо чтоли, забыли напрочь. Или это только некоторые посетители данного портала такие нравственно альтернативные?
Всё, можете начинать лечить Можете не начинать:)) | |
|
|
|
|
|
|
|
для: 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. | |
|
|
|
|
|
|
|
для: 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 правила для каждого домена. | |
|
|
|
|
|
|
|
для: shatun2007
(29.11.2010 в 12:04)
| | Хороший вариант, но ведь это обычное перенаправление на другой сайт. А мне необходимо чтобы перенаправление всех запросов было внутренним, и в адресной строке браузера ничего не изменялось, т.е. оставался все тот же domain_2.tld | |
|
|
|
|
|
|
|
для: FBI
(29.11.2010 в 14:14)
| | У меня это перенаправление работает именно так, как Вам нужно.
Пусть сайт site.ru - основной и, например, site.com, сайт.рф - алиасы. Что бы я не набрал в адресной строке (site.com, site.ru, сайт.рф), выдается содержимое site.ru, а в адресной строке остается набранное, например, сайт.рф.
Вероятно, у меня так работает, потому что я еще сделал прилинковку доп. доменов у хостера к папке основного сайта... | |
|
|
|
|
|
|
|
для: 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 запрос. Так что страницы будут работать. | |
|
|
|