Причина, по которой он убивает ваш сеанс со страницы A, заключается в том, что на стороне клиента сеансы реализуются с использованием файлов cookie. И страница A, и страница B пытаются использовать один и тот же повар сеанса ie с разными идентификаторами сеансов, поэтому, если один из них записывает его в последнее время, тот убивает другой.
Если вы просматриваете файлы cookie с помощью браузера Инструменты разработчика F12, вы должны увидеть один из них:
Name Value Domain Path
ORA_WWV_APP_115305 ORA_WWV_FMN08hWNhlkjRDOIU_y yoursite.com /pls/apex (etc)
Это сессия Cook ie для APP ID 115305, и браузер будет отправлять его вместе с каждым HTTP-запросом на yoursite.com/pls/apex
. Apex использует Value
, чтобы убедиться, что вам разрешен доступ к сеансу, указанному в вашем URL-адресе. Если вы измените идентификатор повара ie или идентификатор сеанса URL, ваш сеанс будет потерян, и Apex создаст для вас новый.
Таким образом, Name + Domain + Path
образует здесь своего рода уникальный ключ. Вы можете иметь только один сеанс для каждого уникального имени + домена + пути приготовления ie.
Я думаю, что самое простое решение здесь - это поместить вашу публикуемую c страницу B в отдельное приложение Apex . Таким образом, у него будет свой сеанс повара ie с другим именем.
(Таким образом, Oracle App Builder, который также является приложением Apex, может одновременно запускать отдельный сеанс без прерывания сеанса вашего приложения. Его файлы cookie используют имя, подобное ORA_WWV_USER_9872
)
В качестве альтернативы можно использовать другой домен или путь для страницы B, но это сложнее.
Похоже, вы настроили собственную схему аутентификации, поэтому я думаю, что ваш повар ie будет выглядеть так:
Name Value Domain Path
SESSIONCOOKIE ORA_WWV_FMN08hWNhlkjRDOIU_y yoursite.com / (etc)
Но вы все еще используете одну и ту же схему аутентификации (и один и тот же повар ie) как для страницы A, так и для страницы B, поэтому они не могут иметь отдельные сеансы. Это был бы случай, когда было бы неплохо, если бы Oracle поддерживал использование отдельной схемы аутентификации для каждой страницы, но это не так. Для этого и нужны отдельные приложения.