Russian TYPO3 community

Russian TYPO3 community (http://forum.typo3.ru/index.php)
-   Общие вопросы (http://forum.typo3.ru/forumdisplay.php?f=12)
-   -   Как правильно организовать мультисайт (http://forum.typo3.ru/showthread.php?t=9157)

surfman 19.01.2011 12:49

Как правильно организовать мультисайт
 
Есть сайт с такой структурой

Главная
-Раздел 1
-Раздел 2
-Раздел 3
-Раздел 4
-Страница 1
-Страница 2
-страница 3

Верхнее меню выводится из этого первого уровня, т.е Раздел 1...страница 3

Теперь задумал три первых раздела разнести на три разных домена.
А четвертый раздел и страницы хоть визуально останутся в верхнем меню в том же порядке(тоесть одно меню на все сайты), но относятся к Разделу 1(Domen1), тоесть нынешний Раздел 1 и Страницы - это разделы Domen1.
Нынешняя главная страница во фронтэнде никак не участвует.

Первый вариант.
Структуру дерева оставить прежней, просто припарковать домены к разделам.

Второй вариант.
Изменить структуру и вынести сайты в корень Typo3

Раздел 1(Domen1)
-Раздел 4
-Страница 1
-Страница 2
-страница 3
Раздел 2(Domen2)
Раздел 3(Domen3)

Верхнее меню можно и вручную слепить.

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

Vornic 25.01.2011 18:05

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

surfman 27.01.2011 16:28

Так же поступил, вынес в корень дерева отдельные сайты.
Появился вопросик. Не пойму как настроить RealUrl. Вроде все правильно сделал, но когда ставлю ссылку на сайте domen1 на страницу сайта domen2, то она получается вида domen2/index.php?id=6. Тоесть полный Url не генерируется.

Vornic 27.01.2011 16:35

Ну, для этого просто нужно правильно настроить конфиг RealUrl, тут уже писали на эту тему, повторюсь:
$RootPID = array(
'www.domen1.com' => '17',
'domen1.com' => '17',
'www.domen2.com' => '41',
'domen2.com' => '41',
...
);
т.е. привязываются доменй к узлу, и ниже:
, 'pagePath' => array(
'type' => 'user'
, 'userFunc' => 'EXT:realurl/class.tx_realurl_advanced.php:&tx_realurl_advanced->main'
, 'spaceCharacter' => '-'
, 'languageGetVar' => 'L'
, 'rootpage_id' => $RootPID[$_SERVER['HTTP_HOST']]
, 'disablePathCache' => 0
, 'expireDays' => 7
, 'segTitleFieldList' => 'tx_realurl_pathsegment,alias,nav_title,title'
, 'excludePageIds' => null
)

surfman 28.01.2011 15:12

А куда вписывать
$RootPID = array(
'www.domen1.com' => '17',
'domen1.com' => '17',
'www.domen2.com' => '41',
'domen2.com' => '41',
...
);

Что то никак не работает.

Vornic 28.01.2011 16:17

Это не забыли?
, 'rootpage_id' => $RootPID[$_SERVER['HTTP_HOST']]

surfman 28.01.2011 16:43

Цитата:

Сообщение от Vornic (Сообщение 30031)
Это не забыли?
, 'rootpage_id' => $RootPID[$_SERVER['HTTP_HOST']]

нет. не забыл

Vornic 28.01.2011 16:47

если rootpage_id больше ни где не определяется, посмотрите привязки доменов к узлам в админке, и baseurl в TS сайтов.

surfman 28.01.2011 17:33

realurl_conf.php.
Цитата:

$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl'] = array (
'_DEFAULT' => array (
...............
$RootPID = array(
'domen1.ua' => '1',
'domen2.ua' => '7',
'domen3.ua' => '6',
),
'pagePath' => array(
'type' => 'user',
'userFunc' => 'EXT:realurl/class.tx_realurl_advanced.php:&tx_realurl_advanced->main',
'spaceCharacter' => '-',
'languageGetVar' => 'L',
'rootpage_id' => $RootPID[$_SERVER['HTTP_HOST']],
'disablePathCache' => '0',
'expireDays' => '7',
'segTitleFieldList' => 'tx_realurl_pathsegment,alias,nav_title,title',
'excludePageIds' => 'null'
) ,

................
),

);
localconf.php

Цитата:

$tx_realurl_config = $TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT'];
$TYPO3_CONF_VARS['EXTCONF']['realurl']['domen1.ua']=$tx_realurl_config;
$TYPO3_CONF_VARS['EXTCONF']['realurl']['domen2.ua']=$tx_realurl_config;
$TYPO3_CONF_VARS['EXTCONF']['realurl']['domen3.ua']=$tx_realurl_config;

$TYPO3_CONF_VARS['EXTCONF']['realurl']['domen1.ua']['pagePath']['rootpage_id']=1;
$TYPO3_CONF_VARS['EXTCONF']['realurl']['domen2.ua']['pagePath']['rootpage_id'] = 7;
$TYPO3_CONF_VARS['EXTCONF']['realurl']['domen3.ua']['pagePath']['rootpage_id'] = 6;
В TS каждого сайта прописан свой baseURL.
В админке домены созданы.

Vornic 28.01.2011 17:46

Да, вроде всё верно. И что имеем на выходе?

surfman 28.01.2011 18:04

На сайте domen1.ua ставлю ссылку на страницу из сайта domen2.ua.
Эта ссылка выглядит domen2.ua/index.php?id=6
А должна выглядеть domen2.ua/alias/alias

Чищу все кеши.

Vornic 28.01.2011 18:16

Очень странно, такое впечатление что realurl вообще не включен.

surfman 28.01.2011 18:25

Внутри каждого сайта все ссылки нормальные, а если сыылка на другой сайт - то нет.

Vornic 28.01.2011 18:39

А... так не обрабатываются внешние ссылки?

surfman 28.01.2011 18:54

Всмысле все сайты в одной инсталяции Typo3. Внутри дерева отдельного сайта все норма, а если из него ставить на страниуцу из ветки другого сайта, то не генерится.

Vornic 28.01.2011 19:05

ну да, realurl воспринимает ссылку как внешний сайт - в этом причина.

surfman 28.01.2011 19:32

и как это решается?

surfman 01.02.2011 12:11

Так каким образом нужно заставить генерировать полный ЧПУ на внешний сайт в одной инсталяции?

Vornic 01.02.2011 14:52

Я исчерпал варианты, надо смотреть...
А что значит внешний, есть и внутренний на этой инсталляции?

Андрей Аксенов 02.02.2011 10:17

В шаблон сайта нужно добавить следующую конфигурацию:
Код:

# Для многодоменной конфигурации.
# Проверка страницы на связь с корневой страницей.
page.config.typolinkCheckRootline = 1
# Создание ссылок между доменами, используя схему ссылок текущего домена.
config.typolinkEnableLinksAcrossDomains = 1
# Префикс в виде тега base для локальных ссылок
config.prefixLocalAnchors = all
# Возможность показать "содержимое страницы" из другого домена
config.content_from_pid_allowOutsideDomain= 1
# Выдача заголовклв управления кешем для клиента
config.config.sendCacheHeaders = 1
# Связь результатов поиска с доменом, где они были найдены.
plugin.tx_indexedsearch.search.detect_sys_domain_records = 1



Часовой пояс GMT +4, время: 15:15.

Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot