这是我第一次尝试子系统,大部分情况都进展顺利。在会话结束时,我无法将子系统站点中的用户重定向到主要顶级站点。FW/1子系统 - 重定向到顶部网站
这里可能是网站结构,它很标准。
- 我已经从我的登录的mainSite
- 基地我重定向到相应的子系统,即(subsite1的,subSite2)
- 当我的会话结束我不想被重定向到mainSite.login登录,而是将我重定向到subSite1.login。
我的问题是,我如何将用户从子系统站点重定向到mainSite登录?
这是我的网站结构。
mainSite
-assets
-contorllers
-login.cfc
-security.cfc
-framework
-layouts
-model
-subsystems
-subSite1
-controllers
-layouts
-model
-views
-main
-default.cfm
application.cfc
index.cfm
-subSite2
...
-views
-login
-default.cfm (login form)
application.cfc
index.cfm
/mainSite/controllers/security.cfm直接从FW/1下载,只需稍作更改即可满足我的需求。我尝试更新authorize()函数中的重定向,但没有运气。提前感谢您的见解。
component {
function init(fw) {
variables.fw = fw;
}
function session(rc) {
// set up the user's session
session.auth = {};
session.auth.isLoggedIn = false;
session.auth.fullname = 'Guest';
}
function authorize(rc) {
// check to make sure the user is logged on
if (not(structKeyExists(session, "auth") && session.auth.isLoggedIn) && !listfindnocase('login', variables.fw.getSection()) && !listfindnocase('main.error', variables.fw.getFullyQualifiedAction())) {
variables.fw.redirect('login');
}
}
}
嗨亚当,感谢您的快速回复。不幸的是,这确实奏效,我得到了这个错误。 “此页面无法显示”。对不起,如果我不清楚我的问题。我已经添加了我的网站结构,所以我可以更好地解释。 我想在用户从subSite1(/ mainSite/subsystems/subSite1/main)重定向到mainSite(/ mainSite/login)登录页面过期时。 – user752746
在我看来,你不明白子系统是如何工作的。你应该从阅读文档开始:http://framework-one.github.io/documentation/using-subsystems.html –
你说得对,这是我的第一个子系统应用程序,我试图围绕FW/1子系统。鉴于我上面的网站结构,是否所有网站都需要(应该)在子系统文件夹内?感谢您的见解! – user752746