首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么coldfusion网页在处理application.cfm之前运行?

为什么coldfusion网页在处理application.cfm之前运行?
EN

Stack Overflow用户
提问于 2014-07-30 22:11:24
回答 1查看 527关注 0票数 1

我在Windows2008 R2上使用ColdFusion 11。据我所知,如果根文件夹中有application.cfm页面,则根目录下的任何.cfm页面都将首先处理该页面,然后再处理常规的.cfm页面。我注意到它首先处理我的常规页面,然后调用application.cfm页面。

在我的示例中,我有一个更新数据库的网页,但在我的application.cfm页面中,我检查会话变量以查看用户是否已登录。如果他们没有登录,那么我将他们重定向到登录页面,让他们登录,设置会话变量,然后将他们重定向回处理页面。但我注意到,当我运行页面时,数据库会更新,然后用户会被重定向到登录,然后数据库会再次更新。

我没有正确使用application.cfm页面吗?我以为它应该是用来检查登录之类的东西的。如何确保它首先运行?

顺便说一句,这是整个网站中唯一的application.cfm页面,我没有任何application.cfc文件。

谢谢。

EN

回答 1

Stack Overflow用户

发布于 2014-07-30 22:31:30

Application.cfm将随每个请求一起运行。如果您在Application.cfm内部有一些数据库命中,那么您将命中每个页面代码,除非重定向首先发生。在没有看到确切代码的情况下,您可能会对此流程进行一些变化:

  1. User requests page.cfm
  2. CF在执行page.cfm之前读取application.cfm,a)针对application.cfm内部的某些操作访问数据库,然后b)将您重定向到login.cfm
  3. CF第二次读取application.cfm (这次针对login.cfm),a)针对application.cfm内部的某些操作访问数据库,然后b)让您访问login.cfm模板。
  4. CF第三次读取application.cfm (这次针对您的登录操作页面)。设置会话变量并绕过数据库(?)

这都是猜测。如果这不能给你带来一些解决方案,那就发布你的代码。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25039063

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档