Yii2 мультисайт

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
denfunk
Сообщения: 12
Зарегистрирован: 2017.03.11, 19:22

Yii2 мультисайт

Сообщение denfunk »

Добрый день.
Имеется порядка 50 сайтов на хостинге на Wordpress. А это порядка 50 движков, которые нужно постоянно поддерживать в актуальном состоянии. Часть проектов вырастает из функционала WP.
У меня возникла идея крупные проекты переписать на Yii2. Потому стал такой вопрос.
VPS на убунте, могу ли я использовать Yii2, как единный фреймворк для таких проектов.
Например, vendor положить в корень относительно проектов, а сами проекты размещать в папках доменов.
Получается такая структура.
Папка vendor лежит в папке с пользователями,
а сами приложения лежат в следующем порядкe
/user1/site1/app/, /user1/site1/public_html/
/user1/site2/app2/, /user1/site2/public_html/
/user2/site3/app3/, /user2/site3/public_html/

Можно ли так сделать? Какие нюансы могут возникнуть?
kukuruku
Сообщения: 1318
Зарегистрирован: 2011.02.14, 11:36

Re: Yii2 мультисайт

Сообщение kukuruku »

Wordpress тоже умеет мультисайт
skynin
Сообщения: 400
Зарегистрирован: 2017.12.12, 10:09

Re: Yii2 мультисайт

Сообщение skynin »

denfunk писал(а): 2020.08.07, 13:08 Можно ли так сделать? Какие нюансы могут возникнуть?
добавлю к тому что WP имеет вполне годный режим мультисайт:
Вы уже написали свой функционал, заменяющий функционал WP?

А один vendor файл и точки входа на каждый сайт не проблема.
Входить то уже есть куда?
Не желайте странного, и не будет у вас головной боли чтобы достичь этого странного.
Тем более что окажется что оно вам и не нужно было, странное это.
Аватара пользователя
maleks
Сообщения: 1985
Зарегистрирован: 2012.12.26, 12:56

Re: Yii2 мультисайт

Сообщение maleks »

denfunk писал(а): 2020.08.07, 13:08 Папка vendor лежит в папке с пользователями,

Можно ли так сделать? Какие нюансы могут возникнуть?
Если проекты начнут отличаться, то задумывалось то так что один проект и под него его vendor.
И yii не только же из ядра состоит.
Можно конечно поколдовать чтобы с одного места бралось, алиасами теми же или симлинками
Yii2 universal module sceleton - for basic and advanced templates
denfunk
Сообщения: 12
Зарегистрирован: 2017.03.11, 19:22

Re: Yii2 мультисайт

Сообщение denfunk »

Добрый день.

Я в курсе про мультисайт wp и т.п. Есть куча моментов почему он не рассматривается в рамках всей этой сети сайтов.

Нет, не писал. Пока выясняю стоит ли овчинка выделки, потому и создал тему.

То есть по сути структуру, которую описал, создать - не проблема и в дальнейшем проблем не возникнет?

По поводу собственных отличающихся вендоров не думал. Почему нельзя все в единый общий положить? Чтобы и ядро и библиотеки в нем хранились, зачем отдельные вендоры?
Аватара пользователя
ElisDN
Сообщения: 5845
Зарегистрирован: 2012.10.07, 10:24
Контактная информация:

Re: Yii2 мультисайт

Сообщение ElisDN »

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

Если всем нужны одинаковые, то тогда можно перенести vendor и composer.json в корень и в конфигах сайтов рядом с basePath указать новый vendorPath.

В Yii это сработает, так как для файлов проекта используется его автолоадер, а не композеровский.
skynin
Сообщения: 400
Зарегистрирован: 2017.12.12, 10:09

Re: Yii2 мультисайт

Сообщение skynin »

denfunk писал(а): 2020.08.08, 13:22 Пока выясняю стоит ли овчинка выделки, потому и создал тему
Неизвестно.
Потому что проблема сооооовсем не в vendor
А в самих сайтах. О которых - ничего не известно.

Проблема в том что по сути - вам надо спроектировать мультисайт на Yii2.
А не - "одна vendor - делов то!"

Поэтому - стоит ли овчинка выделки - вы никакой информации не дали.
А в Yii2 да, прекрасно создаются хоть сколько точек входа.
Если сайты почти одинаковые, то никаких проблем.

Если разные, то одно обновление для одного сайта - и сломались все остальные :)

Поэтому и говорю - вы не с того края начали.
Выберите два самых разных сайта из ваших.
Напишите их на Yii2 отдельно. Можно упрощенно.
А потом уже и смотрите, а можно их было совместить в мультисайт системе.

Или - а сколько плагинов задействовано сейчас на WP?
У вас уже они есть, нашли, написали их на Yii2?
Админка - точно уже готова? Или не нужна?
и т.д.
Не желайте странного, и не будет у вас головной боли чтобы достичь этого странного.
Тем более что окажется что оно вам и не нужно было, странное это.
denfunk
Сообщения: 12
Зарегистрирован: 2017.03.11, 19:22

Re: Yii2 мультисайт

Сообщение denfunk »

У меня плагинов минимально. В основном для SEO, транслитации и доп.поля. Все остальное ручками пишу в коде или в functions.php
Сайты в основном информационные. Часть из них имеет небольшие сервисы. Переписать на Yii их проблема не составит.

В чем должна быть разница? Если на одном новостном сайте есть форум, а на другом нет? Я же само приложение пишу отдельное, а вендор использую как ядро, коды библиотек, которые по необходимости использую в проекте, который лежит отдельно в папке сайта с точной доступа в папке public_html. Или я что-то не понимаю. Почему должно ломаться?
denfunk
Сообщения: 12
Зарегистрирован: 2017.03.11, 19:22

Re: Yii2 мультисайт

Сообщение denfunk »

ElisDN писал(а): 2020.08.08, 14:15 Если для каких-то сайтов нужны разные компоненты, то лучше оставить каждому сайту свою парку vendor.

Если всем нужны одинаковые, то тогда можно перенести vendor и composer.json в корень и в конфигах сайтов рядом с basePath указать новый vendorPath.

В Yii это сработает, так как для файлов проекта используется его автолоадер, а не композеровский.
Почему лучше? Я тут маленько просто не понимаю.
А если два вендора использовать? Один общий и один кастомный чисто для проекта?
denfunk
Сообщения: 12
Зарегистрирован: 2017.03.11, 19:22

Re: Yii2 мультисайт

Сообщение denfunk »

skynin писал(а): 2020.08.08, 15:53 Если разные, то одно обновление для одного сайта - и сломались все остальные :)

Поэтому и говорю - вы не с того края начали.
Выберите два самых разных сайта из ваших.
Я может просто не догоняю нормально как Yii2 работает.
Вот допустим есть один сайт - новостник, а второй - это CRM.

Какие могут возникнуть проблемы в работе этих ресурсов из одного вендора?
skynin
Сообщения: 400
Зарегистрирован: 2017.12.12, 10:09

Re: Yii2 мультисайт

Сообщение skynin »

denfunk писал(а): 2020.08.08, 17:08 Вот допустим есть один сайт - новостник, а второй - это CRM.
Так допустим, или у вас уже есть минимум два работающих сайта на Yii:
Один - новостник
Второй - CRM

И вы решили чтобы у них был один vendor.
Зачем, с какой целью вы так решили?
Какую бизнес проблему вы хотите этим решить?
Какую техническую проблему вы хотите этим решить?
denfunk писал(а): 2020.08.08, 17:08 Я может просто не догоняю нормально как Yii работает.
Ну как работает:
Есть код системы, есть web roots
Сколько надо web roots - столько и делаете.

Сделайте для ваших - новостника и CRM общее приложение, и раздельные web roots и все.

Но вопросы выше
Они, два эти сайта на Yii у вас уже есть?
Какую проблему вы хотите этим решить?

Если ответ
Нет
Не знаю

тогда нет предмета разговора:
У вас нет приложений на Yii.
Вы сами не понимаете зачем это хотите.
Не желайте странного, и не будет у вас головной боли чтобы достичь этого странного.
Тем более что окажется что оно вам и не нужно было, странное это.
denfunk
Сообщения: 12
Зарегистрирован: 2017.03.11, 19:22

Re: Yii2 мультисайт

Сообщение denfunk »

skynin писал(а): 2020.08.08, 19:10 Они, два эти сайта на Yii у вас уже есть?
Какую проблему вы хотите этим решить?
Вы явно не обратили внимание на первый пост темы.
Сайты на WP. Куча установок, которые не совсем удобно обновлять.
Мультисайт для этих сайтов не подходит.
Часть сайтов переросли функционал WP.
Единое ядро Yii2 в первую очередь, чтобы не плодить кучу движков.
Если требуется обновить библиотеку, то обновляется в одном месте, а не 50 раз.
Но первая задача не плодить код)))

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

Я вижу их с одним единым вендором со всеми необходимыми библиотеками, с разными автолоудами, конфигами и приложениями.
skynin писал(а): 2020.08.08, 19:10 У вас нет приложений на Yii.
Вы сами не понимаете зачем это хотите.
Я то понимаю, чего я хочу. Вы просто не прочитали.
skynin
Сообщения: 400
Зарегистрирован: 2017.12.12, 10:09

Re: Yii2 мультисайт

Сообщение skynin »

-- Вы явно не обратили внимание на первый пост темы.
-- Сайты на WP.
Как не обратил, когда вам сразу и написал - у вас хоть один сайт на Yii уже есть?

-- Мультисайт для этих сайтов не подходит.
Почему? Может оказаться что никакой "мультисайт" на чем угодно по той же причине не подойдет.

-- Единое ядро Yii2 в первую очередь
WP - это CMS, готова к использоваиню из коробки
Yii это фреймворк для разработки, а не коробочный продукт.
Если вы не разработчик, а по взаимоНЕпонимаю похоже что нет, то забудьте вообще о выборе фреймворка для разработчиков
Или ищите разработчиков и ставьте им задачу - разработать мультисайт платформу на Yii

-- Часть сайтов переросли функционал WP.
Думаю что вряд ли :) Скорее у вас некому делать лихие плагины.

Но если перерос - то значит разработка на Yii потребуется серьезней чем накидать линков на веб руты, и установить фреймворк и парочку расширений аля CMS

-- Если требуется обновить библиотеку, то обновляется в одном месте, а не 50 раз.
Не знаю подробностей, но это можно сделать bash скриптом и для разных WP
Можно и навороченным php скриптом.
WP-CLI в помощь.

-- Возможно ли такое?
Уже ответили многократно.
Приложение на Yii не имеет ограничений на количество web root.
Все зависит от самого приложения - как оно написано.

-- Или не стоит овчинка выделки?
Зависит от ваших ресурсов - люди-деньги.
А так, все возможно.

-- Я то понимаю, чего я хочу.
Напишите скрипт обновления 50 сайтов.
Это точно выйдет дешевле и быстрее чем писать мультисайт на Yi

-- Вы просто не прочитали.
А вы не поняли что вам ответили :)

Наймите программиста, он вам сделает.
Не желайте странного, и не будет у вас головной боли чтобы достичь этого странного.
Тем более что окажется что оно вам и не нужно было, странное это.
denfunk
Сообщения: 12
Зарегистрирован: 2017.03.11, 19:22

Re: Yii2 мультисайт

Сообщение denfunk »

--Как не обратил, когда вам сразу и написал - у вас хоть один сайт на Yii уже есть?
На заказ делал. Для себя проекты делал на WP.

--Почему? Может оказаться что никакой "мультисайт" на чем угодно по той же причине не подойдет.
Единая база данных для мультисайта и много других ограничений. На Yii - это разные приложения, разные бд.

--WP - это CMS, готова к использоваиню из коробки
--Yii это фреймворк для разработки, а не коробочный продукт.
Это я прекрасно понимаю.

--Думаю что вряд ли :) Скорее у вас некому делать лихие плагины.
Я сам веб-разработчик, и все доработки выполняю самостоятельно. С Wordpress на ты.

--Но если перерос - то значит разработка на Yii потребуется серьезней чем накидать линков на веб руты, и установить фреймворк и парочку расширений аля CMS
Я это понимаю.

--Не знаю подробностей, но это можно сделать bash скриптом и для разных WP
--Можно и навороченным php скриптом.
--WP-CLI в помощь.
Да, это возможно. Но я бы хотел просто избавиться от 50 дистрибутивов)

--Уже ответили многократно.
--Приложение на Yii не имеет ограничений на количество web root.
--Все зависит от самого приложения - как оно написано.
Ок, я вас понял.

--Зависит от ваших ресурсов - люди-деньги.
--А так, все возможно.
Понял, спасибо.

--Напишите скрипт обновления 50 сайтов.
--Это точно выйдет дешевле и быстрее чем писать мультисайт на Yii
Как вариант, но не избавляет от дистрибутивов. Проектов будет больше. Место тоже больше. В общем, vps-ки тоже не особо дорогие, место можно докупить.

--А вы не поняли что вам ответили :)
Вполне возможно.

--Наймите программиста, он вам сделает.
Тогда остановлюсь в развитии) Зачем отдавать кому-то, когда можно сделать самому и получить опыт.

В общем, спасибо вам за развернутые ответы.
Ответить