Перейти к публикации

Зеркало И Проблема С Доменомм


Рекомендованные сообщения

Проблема такая. Как сделать, чтобы для разных доменов был разный http_home_url ?

Пробовал в индексе прописать так

	$config['http_home_url'] = explode("index.php", $_SERVER['PHP_SELF']);


					// Доработка выборка шаблонов поумолчанию для разных доменов.

					$real_name = $_SERVER["HTTP_HOST"];

					if (($real_name == "fmnokia.net") or ($real_name == "www.fmnokia.net")) {

	$config['http_home_url'] = reset($config['http_home_url']);

					}

					elseif (($real_name == "fmnokia.su") or ($real_name == "www.fmnokia.su")) {

	$config['http_home_url'] = reset($config['http_home_url']);

					}

					else

	$config['http_home_url'] = reset($config['http_home_url']);

Но это не правильно. Я только попробовать решил ) В общемнужна помощь.

Ссылка на сообщение
Поделиться на других сайтах

Что-то не выходит. Вообще ТЗ такое. Надо чтобы с двух доменов был доступен сайт. Как 4dle.ru. Т.е. не просто зеркало, а чтобы и по страничкам шастать можнобыло с любого домена.

по словам nickon-a

каждый домен паркован на одну и туже папку, в index.php прописан код который менят все ссылки в шаблоне на текущий домен ... вот и всё ...

Как такое реализовать?

Ссылка на сообщение
Поделиться на других сайтах

Snake, этож очень просто

есть 2 пути.

1. использовать для всех зеркал одну базу - здесь в скрипте вообще ничего менять не нужно кроме файла настроек

2. прописать в конфиге основной сайт, допустим somebodyscream.com и далее в index.php вместо

	$config['http_home_url'] = explode("index.php", $_SERVER['PHP_SELF']);

	$config['http_home_url'] = reset($config['http_home_url']);
пишем
$config['http_home_url'] = 'http://'.$_SERVER["HTTP_HOST"].'/';
и выше
echo $tpl->result['main'];
пишешь
$tpl->result['main'] = str_replace('somebodyscream.com', $_SERVER["HTTP_HOST"], $tpl->result['main']);

Ссылка на сообщение
Поделиться на других сайтах

всё сделал как написано. И всё равно, захожу по http://www.fmnokia.su и ссылки все на http://www.fmnokia.net.

Кешь здесь играет роль? Хотя я и почистил его, результата не дало.

Ссылка на сообщение
Поделиться на других сайтах

Snake, у тебя всего 1 зеркало?

ну так проще

if ($_SERVER["HTTP_HOST"] != 'fmnokia.net') $tpl->result['main'] = str_replace('fmnokia.net', 'fmnokia.su', $tpl->result['main']);

Ссылка на сообщение
Поделиться на других сайтах

мда, очень интересно наблюдать как пытаются реализовать то что реализовано. В версии 7.0 нужно только оставить поле адреса сайта в настройках скрипта пустым и отключить кеширование.

Ссылка на сообщение
Поделиться на других сайтах

Snake,

в кеше сохраняется готовая страница, и там будут URL того домена кто сощдал кеш первым, поэтому кеширование и нужно отключать

Ссылка на сообщение
Поделиться на других сайтах

celsoft,

ну зачем было все портить, парни так душевно общались....

может продолжим дальше - просто интересно всетаки как там и чего..

ЗЫ. многие хостеры вешают ограничение на количество запаркованных доменов на аккаунт. но не делают орграничение на алиасы, тоетсь направленные на одну итуже папку. ваши терзания как раз позволяют направить домены разные и если чуть постараться то и контент можно разный отдавать

Ссылка на сообщение
Поделиться на других сайтах

mitriy, celsoft нам ничего не испортил, меня лично варианты без кэша не устраивают. Тем более альтернативный вариант не сложен в реализации...

многие хостеры вешают ограничение на количество запаркованных доменов на аккаунт. но не делают орграничение на алиасы, тоетсь направленные на одну итуже папку. ваши терзания как раз позволяют направить домены разные и если чуть постараться то и контент можно разный отдавать
точно. Приведу пример htaccess когда папка lenaiv внутри "рабочей" папки основного сайта превращается в отдельный сайт на хостинге timeweb.ru

RewriteCond %{HTTP_HOST} ^lenaiv.com

RewriteRule ^$ http://lenaiv.com/index.php


RewriteCond %{HTTP_HOST} ^lenaiv.com

RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^(.*)$ http://lenaiv.com/lenaiv/$1 [L]

Домен lenaiv.com припаркован к сайту домена mgudt.com и находится в папке http://mgudt.com/lenaiv/

Ссылка на сообщение
Поделиться на других сайтах

Собственно для меня тоже не решение - без кеша. Т.к. посещалка большая, и не хочется зря грузить сервер. Поэтому может сделать разделение кеша по url ?

Ссылка на сообщение
Поделиться на других сайтах

хитро. но это не решает входа по этой ссылке http://mgudt.com/lenaiv/
по этой ссылке никто и не должен входить) Тем более эта "проблема" тоже решается, пути чуть подправить. Но опять же про ссылку http://domen1.com/domen2/ никто никогда не узнает)

Поэтому может сделать разделение кеша по url ?
зачем? разница между этими двумя кэшами будет только в URL домена - так не проще ли взять str_replace и... :)
Ссылка на сообщение
Поделиться на других сайтах

так посмотри чему у тебя равно $_SERVER["HTTP_HOST"] при обоих доменах и исходя из полученной информации строй условие :)

Ссылка на сообщение
Поделиться на других сайтах

Поменял чуток код

По коду получаю

Все ссылки несмотря на домен http://www.fmnokia.net/. Т.е. я вывел переменную $_SERVER["HTTP_HOST"] и она на каждом домене показывается нормально,

if ($_SERVER["HTTP_HOST"] != 'fmnokia.su') $tpl->result['main'] = str_replace('fmnokia.su', 'fmnokia.net', $tpl->result['main']);
Теперь что на http://www.fmnokia.net/, что на http://www.fmnokia.su/ - выводит ссылки http://www.fmnokia.net/ сам код вставлял в index.php вида
echo $_SERVER["HTTP_HOST"];

if ($_SERVER["HTTP_HOST"] != 'fmnokia.su') $tpl->result['main'] = str_replace('fmnokia.su', 'fmnokia.net', $tpl->result['main']);

//eval (' ?' . '>' . $tpl->result['main'] . '<' . '?php ');


echo $tpl->result['main'];

Ссылка на сообщение
Поделиться на других сайтах

Нет. Ведь получается что работает только для одного домена. Т.е. с последним приведённым кодом при заходе по SU и NET сайт отображается нормально, но внутренние ссылки - NET

Ссылка на сообщение
Поделиться на других сайтах

Архивировано

Эта тема находится в архиве и закрыта для публикации сообщений.

×
×
  • Создать...