2016-06-13 65 views
0

最近有些用户遇到此错误。直到用户在应用程序中有一段时间才会出现此错误(范围从几分钟到一个半小时)。Cold Fusion 11:变量在会话中未定义

当这个问题第一次出现时,我修改了包含超时变量的application.cfm文件。这帮助了一位用户,但现在更多的人遇到同样的错误。下面是修改后的代码,我将超时时间限制为200分钟。

<CFAPPLICATION 
    NAME="MyApplication" 
    SESSIONMANAGEMENT="Yes" 
    sessiontimeout="#CreateTimeSpan(0,0,200,0)#" 
    applicationtimeout="#CreateTimeSpan(0,0,200,0)#"> 

我的问题:用户仍然遇到此超时错误,5分钟内,在我设定的超时时间200分钟。是否有一个变量或CF管理员端设置的设置覆盖了我的超时范围?如果没有,我需要更多地研究这一点。任何建议或意见是有益的,谢谢。

+0

有几种设置可能需要检查。 http://i.imgur.com/ivaf0lO.png – TRose

+0

@Tose我猜这是CF管理界面。我对么?我无权访问管理员部分,因此我必须要求管理员检查他们的身份。这就是为什么我想确保他们在发送电子邮件之前有一个超时部分。 – Chris

+1

因此它在某些时候正常工作,但最近停止了?在开始发生之前是否对代码做了任何更改(应用更新等等)?在CF Admin中有一个[最大超时设置](http://help.adobe.com/en_US/ColdFusion/9.0/Developing/WSc3ff6d0ea77859461172e0811cbec22c24-7c48.html)设置:*“....指定最大会话时间-out。应用程序代码无法将超时值设置为大于此值,此超时的默认值为两天* – Leigh

回答

0

您绝对需要托管服务提供商提供的更多信息。常见问题包括:

  1. 它们是负载平衡,不使用粘性会话。因此,用户必须在属于负载均衡集群一部分的每台服务器上登录并创建一个会话。

  2. 它们在ColdFusion服务器前有一个代理服务器或Web服务器,其配置可以改变来自ColdFusion服务器的响应。

  3. 他们在CFAdmin控制台中设置了限制应用程序设置的设置,按照TRose和Chris提供的注释。

0

所以值得关注的是超时: IIS,Apache和Tomcat的web服务超时为好。例如,如果Apache设置为300秒超时,但Coldfusion设置为350超时,Web服务将始终触发(无论您在Coldfusion Admin或Cfsettings中执行什么操作,因为Web服务器会取而代之)。

因此,Web服务器超时实现可能会让您的Coldfusion超时运行。