Изолация на много наематели (Multi-Tenancy Isolation)
Ultimate Multisite: Multi-Tenancy 1.2.0 поддържа изолация на база данни и файлова система за всеки субсайт за суверенни наематели. Това държи данните на наемателите отделни, докато запазва провизирането на ниво мрежа, биில்லிнга и администрирането.
Стратегия за изолация
Използвайте суверен изолационен подход за клиенти, които изискват по-силно разделяне на данните, отделно файлово съхранение или отделна граница на хоста.
Всеки суверен наемател трябва да има:
- Отделена база данни за наемателя или стратегия с префикс на базата данни, одобрена от хоста.
- Отделен корен (root) на файловата система за наемателя.
- Запис в регистъра на наемателите, който свързва сайта с неговата база данни, корен път, име домен и модел на изолация.
- Резултат от проверка на миграцията преди наемателя да бъде приет за работа.
Привързване към хоста на базата данни (Database host binding)
Версия 1.2.0 променя поведението по подразбиране за свързване към машината за суверен инсталации. Стойности като localhost се нормализират, така че Bedrock, FrankenPHP и контейнеризирани инсталации на WordPress могат да предоставят и да проверяват разрешения срещу стринг на хоста, който MySQL всъщност вижда.
При конфигуриране на суверен наемател:
- Уставете хоста на базата данни на стойността, необходима за runtime-а на наемателя.
- Използвайте
localhostза локални сокети инсталации, когато хостът очаква локални връзки. - Използвайте
127.0.0.1или име на услуга (service hostname) само когато сървърът на базата данни предоставя привилегии на този хост. - Проверете миграцията след промяна на свързването към хоста.
Ако проверките показват грешки при предоставянето на права, сравнете разрешенията за потребителя в БД с конфигурацията за свързване към хоста. Потребител, предоставен за user@localhost, е различен от [email protected] или user@%.
Корен на файловата система (Filesystem root)
Кореста наемателя трябва да бъде стабилна при рестарти и деплоймове. Избягвайте временни пътища за монтиране. За инсталации в стил Bedrock, потвърдете, че корена на наемателя сочи към кореновата директория на WordPress уеб сайта, която очаква бутстрапът на наемателя, а не само проектния корен.
Редовност на провизирането (Provisioning order)
За нови суверенни наематели използвайте този ред:
- Създайте запис във регистъра на наемателите.
- Създайте база данни и потребител на база данни за наемателя.
- Бутстрапнете схемата на наемателя.
- Провизирайте потребители на наемателя.
- Настройте пътищата на файловата система на наемателя.
- Изпълнете проверка на миграцията.
- Преключете маршрутирането или DNS след успешно преминаване на проверката.
Този ред предотвратява получаването на трафик от частично изолирани наематели преди базата данни, потребителите и файловата система да са готови.
Процеси за управление на суверенни клиенти (Sovereign customer management flows)
Ultimate Multisite v2.13.0 държи действията по управление на клиентите на основния сайт, когато режим на суверенен е включен. Наемателя все още може д а работи като изолирана инсталация на WordPress, но действията, свързани с клиента, които зависят от мрежово биில்லிране, членство или данни за обща акаунт, трябва да връщат клиента обратно към основния сайт вместо да се опитват да завършат действието в рамките на изпълнението на наемателя.
Основният поток се прилага за:
- Процеси за плащане и промени в плана.
- Преглед на акаунта и действия по профила на клиента.
- Актуализации на адреса за биில்லிнг и екрани за управление на плащанията.
- Прегледи на фактури и история на плащания.
- Действия по управление на сайта, като например добавяне или изтриване на сайт.
- Превключване на шаблони.
- Мапиране на домените и промени в основния домейн.
Когато клиент започне някоя от тези действия от суверен (sovereign) арендатор, Ultimate Multisite създава съответния URL на основния сайт и запазва източния арендатор като целевия адрес за връщане, когато това е безопасно. Това позволява на клиентите да завършат управляваната дейност спрямо мрежовите данни, след което да се върнат в контекста на арендатора без дубл иране на информацията за биில்லிнг или членството в суверен база данни.
За операторите практическото правило е: задръжте страниците за биில்லிнг (billing), акаунт (account), чекаут (checkout), фактура (invoice), шаблон (template) и управление на домейна (domain-management) налични на основния сайт за суверен мрежи. Таблото за управление на арендатора може да свързва тези страници, но основният сайт остава източника на истината за действието.