Как разделить два сайта с общей базой пользователей?

#1 12 мая 2016 в 02:18
Есть два сайта (2.4.0) с одной базой пользователей. Хочу их сделать не зависимыми друг от друга, по следующим соображениям:
1) Вкладки в профилях пользователей создают проблемы, (сайт выдаёт ошибку если вкладка (Лента) пытается отобразить контент созданный юзером на другом сайте).
2) Проблемы с обновлением движка. Если обновил первый сайт, второй как правило перестаёт работать и обновлять его нужно ручками и соответственно сразу приходиться возиться с дизайном и с конфиг-файлами (что бы вернуть свои настройки).
Короче — много сложняков! По очереди сайты не получится обновить — только все разом.

Порядок действий:
— Прежде всего нужно сохранить сайт2/system/config/config.php, т.к. в нём будем вносить правки и есть вероятность накосячить (если сайт №2 рухнул, возвращаем этот файл к исходному состоянию). Также не помешает сделать копию бд MySQL.
— Содержимое папки сайт1/upload копируем в сайт2/upload.
— В общей базе MySQL экспортируем таблицы сайта № 2 (находим их по префиксу который указан в сайт2/system/config/config.php, строка — db_prefix) и таблицу пользователей (db_users_table).
— Создаём новую базу MySQL для сайта № 2 и импортируем в неё таблицы сохранённые в предыдущем шаге.
— Редактируем сайт2/system/config/config.php: меняем старые значения базы MySQL:
'db_base' — новая бд MySQL
'db_user' — пользователь бд
'db_pass' — пароль бд
'db_prefix' — префикс останется прежний
'db_users_table' — таблица пользователей останется прежней
Для загрузки изображений меняем адрес:
'upload_root' — '/upload/',
'upload_host' — 'http://сайт2.ru/upload',
— Проверяем работоспособность сайта, и если всё ОК, то удаляем из первой бд MySQL таблицы с префиксом сайта № 2.

После разделения бд — обновление движка станет более простым занятием.
А теперь вопрос: вкладка "Лента" в профиле на сайте №2 как не работала, так и не работает (503 Service Unavailable), как её починить?
#2 12 мая 2016 в 13:21
Может стоит таблице юзеров переименовать (префикс добавить как у остальных таблиц)?
#3 12 мая 2016 в 15:06
У меня два сайта с одной базой, проблем вообще не наблюдается. Правда маленький хак пришлось сделать (сделал общими только пользователей), иначе профили не работают. Так как один сайт, хочет отобразить вкладки другого, не находит у себя соответствующего компонента и падает
#4 12 мая 2016 в 15:25
Dimson, я про это и говорю. Если на основном сайте вкладки профиля включены, то и на остальных они включаются. А вкладки которые пытаются отобразить контент с другого сайта — приводят к белому экрану (ошибка 503). У меня они год работали и всё Ок, но как только обновляю движок одного сайта — остальные работать перестают. А оставить их в таком состоянии нельзя же. Вот и приходится совершать великий подвиг))) Всё разом обновлять))) Устал...
А теперь ещё и необходимость во вкладках появилась. Раньше они просто были отключены. Теперь на отдельной базе вкладка профиля "лента" не работает (ошибка 503). И я незнаю как это исправить. Сама по себе возможность общей базы пользователей для нескольких сайтов на инстанте работает шикарно, нареканий нет, но как оказалось мне эта возможность больше мешает, т.к. я всегда держу движок в актуальном состоянии.
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.