Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 31.08.2010, 17:30   #1
Maxx
Форумчанин
 
Аватар для Maxx
 
Регистрация: 29.10.2008
Сообщений: 294
По умолчанию mod_rewrite (заменить домен в адресной строке)

Всем доброго дня!
Есть домен 1 http://domain.ru (у него немного кривое название)
Есть новый домен2 http://newdomain.ru

Домен1 уже проиндексирован и занесен в некоторые каталоги.
Оба домена на одном хосте и ссылаются на одну папку.

Вариант 1:
Как с помощью mod_rewrite вместо domain подставить newdomain.
Все ссылки имеют вид http://domain.ru/about и т.п.
Сайт на Joomla.
Перечитал кучу статей, но видимо, для этого моих мозгов не хватает

RewriteEngine On
RewriteCond %{HTTP_HOST} (.*)\domain\.ru
RewriteRule ^(.*) http://%1newdomain.ru/$1 [R=301,L]

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

Не работает

Вариант 2:
А может лучше сделать на хосте отдельныу папку "redirect" и поместить туда index.php
Код:
<?php
header("location:http://newdomain.ru/");
exit;
?>
Но в этом случае переадресуется только http://domain.ru, а http://domain.ru/about выдаст "NOT found"

Подскажите, как сделать правильнее и как?

Последний раз редактировалось Maxx; 31.08.2010 в 17:33.
Maxx вне форума Ответить с цитированием
Старый 31.08.2010, 19:41   #2
Никки
Форумчанин Подтвердите свой е-майл
 
Аватар для Никки
 
Регистрация: 20.11.2007
Сообщений: 500
По умолчанию

напишите в верху файлов которые исполняются при запросах подобных этому /about

Код:
if ($_SERVER[HTTP_HOST] != "newdomain.ru") header("location:newdomain.ru".$_SERVER[REQUEST_URL]);
код не проверял, возможны ошибки, но общий принцип, которым бы воспользовался я, думаю понятен.
Никки вне форума Ответить с цитированием
Старый 01.09.2010, 12:46   #3
Maxx
Форумчанин
 
Аватар для Maxx
 
Регистрация: 29.10.2008
Сообщений: 294
По умолчанию

Никки, спасибо!
Но я все же поднатужил свой мозг и выдал вот что:
В корне специально cозднанной папки поместил .htaccess
Код:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^domain.ru
RewriteCond %{REQUEST_URI} /([A-Za-z0-9-]+)$
RewriteRule (.*) http://newdomain.ru/$1 [L,R=301]

RewriteCond %{HTTP_HOST} ^domain.ru$
RewriteRule (.*) http://newdomain/$1 [L,R=301]
И перенаправил domain.ru в эту папку.
Работает как надо! Ура!

Последний раз редактировалось Maxx; 01.09.2010 в 13:10.
Maxx вне форума Ответить с цитированием
Старый 01.09.2010, 18:50   #4
Никки
Форумчанин Подтвердите свой е-майл
 
Аватар для Никки
 
Регистрация: 20.11.2007
Сообщений: 500
По умолчанию

Как знаете... По мне так проще с помощью php
Никки вне форума Ответить с цитированием
Старый 19.05.2014, 19:11   #5
Elijium
 
Регистрация: 13.01.2014
Сообщений: 9
По умолчанию

Есть вариант с JavaScript&!
Elijium вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перестали подставлятся автоматически ссылки в адресной строке браузера Golovastik Софт 4 07.07.2010 20:16
Индикаторы в адресной строке Phantom JavaScript, Ajax 4 02.03.2010 12:13
заменить символ в строке felmor Паскаль, Turbo Pascal, PascalABC.NET 1 25.12.2008 18:38
HTML,как заменить текст в адресной строке? Ладушка HTML и CSS 13 28.08.2008 19:37
Смена кодировки названия открываемого файла в адресной строке при переходе на него по ссылки Adamant HTML и CSS 1 08.02.2008 18:51