LINUX.ORG.RU

[Bitrix] Реализация многодоменности

 


0

1

Имеется сайт на битриксе site.net, в котором есть раздел site.com/uk/detail/index.php?UK=1. Хочу создать поддомен uk1.site.net, который будет смотреть на site.com/uk/detail/index.php?UK=1. В дальнейшем количество поддоменов будет увеличено и все они будут смотреть в разные части сайта. Все это должно управляться одной копией битрикса (лицензия Старт). Можно ли это как то реализовать средствами mod_rewrite или urlrewrite самого битрикса?

Есть путь правильный, и путь быстрый.

Путь быстрый реализуется правилами модреврайта вида

RewriteCond %{HTTP_HOST} uk1.site.net
RewriteCond %{REQUEST_URI} !.*uk/detail/index.php?UK=1$
RewriteRule ^(.*)$ /uk/detail/index.php?UK=1
r_asian ★☆☆
()

>Все это должно управляться одной копией битрикса (лицензия Старт).

Делая так, ты отбираешь средства у компании 1с, которая берёт за второй домен какие-то там деньги:)

Можно ли это как то реализовать средствами mod_rewrite или urlrewrite самого битрикса?

Да. Я как-то реализовывал на битриксе многодоменный интернет-магазин с разными ценами и прочими нюансами для разных доменов, при одной БД. Жуткое дело, конечно, но вполне реально.

Через реврайт может не всё получиться, можно работать с переадресацией внутри /bitrix/php_interface/init.php. Этот файл раньше практически всех исполняется.

Далее уже просто - можно там смотреть на GET и переадресовывать на нужные поддомены, можно завернуть что-нибудь покруче, это уже нюансы.

//P.S. - битрикс абсолютное УГ, кривейший код, глобальные переменные, закрывающие друг друга, тормозной и кривой ORM, куча костылей и прочий ад. Если есть возможность отказаться - надо отказываться.

anonymous
()
Ответ на: комментарий от r_asian

Сделал таким образом, но обнаружилась неприятная особенность: urlrewrite битрикса смотрит пути сайта начиная с DOCUMENT_ROOT,который !=/uk/detail/index.php?UK=1, естественно ничего не находит и посылает на 404 страницу. Пришлось его вообще вырубить и прописать все его правила в htaccess. Чувствую граблей еще будет не мало.

forkhammer
() автор топика

Есть много способов сделать то, что требуется, но все способы объединяет ключевой шаг - отказ от битрикса. А если уж хватило ума схавать маркетинговый бред и попасть в анальное рабство к 1С, уж лучше тогда докупить лицензию покруче, ибо, как было справедливо сказано выше,

Делая так, ты отбираешь средства у компании 1с, которая берёт за второй домен какие-то там деньги:)

heisenberg ★★
()
Ответ на: комментарий от heisenberg

>А если уж хватило ума схавать маркетинговый бред и попасть в анальное рабство к 1С, уж лучше тогда докупить лицензию покруче, ибо, как было справедливо сказано выше,

Это, кстати, тоже не спасает:) Многосайтовость в битриксе имеет неприятные ограничения, поэтому даже с лицензией оно реализуется кривовато.

anonymous
()
Ответ на: комментарий от forkhammer

>urlrewrite битрикса смотрит пути сайта начиная с DOCUMENT_ROOT,который !=/uk/detail/index.php?UK=1, естественно ничего не находит и посылает на 404 страницу.

Там есть настройки документ-рута и доменов + можно в начале обработки запроса менять этот документ рут, похакав некоторые исходные файлы, которые битрикс обрабатывает первыми.

Пришлось его вообще вырубить и прописать все его правила в htaccess. Чувствую граблей еще будет не мало.

Именно немало. Отрубая urlrewrite битрикса, ты создаёшь кучу проблем в организации красивых урлов комплексного компонента (типа news или catalog).

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.