У вас есть несколько вариантов здесь, но, как вы указали, система session
не будет работать для вас, поскольку она глобальна для всех экземпляров одного и того же браузера.
Стандартный подход заключается вдобавить что-то к URL, который идентифицирует контекст для выполнения.Это может быть просто префикс, такой как /companyx/users
вместо /users
, где вы выбираете слаг компании и используете его в качестве области действия.Как правило, вы делаете это, имея базовый класс контроллера, который выполняет эту работу за вас, а затем наследует его от всех остальных контроллеров, которые будут затронуты таким же образом.
Другой подход заключается в удалении идентифицирующего компонента компании изURL к имени хоста.Это распространено среди поставщиков программного обеспечения как услуги, потому что это значительно упрощает защиту вашего приложения.Вместо myapp.com/companyx/users
у вас будет companyx.myapp.com/users
.Преимущество этого заключается в сохранении существующей структуры URL, а когда у вас есть большие объемы данных, вы можете разделить ваше приложение по клиенту на разные базы данных без большой головной боли.
Ответ, который вы нашли с пометкой всехURL-адреса, использующие токен GET или поле POST, не будут работать очень хорошо.Во-первых, это грязно, а во-вторых, сайт с каждой ссылкой, являющейся POST, очень раздражает в работе, так как делает навигацию с помощью кнопки «назад» или принудительную перезагрузку проблематичной.Причина, по которой он нашел применение, заключается в том, что из коробки и PHP не существует маршрутов поддержки, поэтому людям приходилось обходиться.