【发布时间】:2024-04-22 16:25:02
【问题描述】:
查看日志,我们得到了数百个以下内容
"Error","jrpp-185","08/21/12","10:05:43","PATH","www.domain.com
Agent:Mozilla/4.0 (compatible; Synapse)
Error: An exception occurred when invoking a event handler method from Application.cfc.
The method name is: onRequest.
它们似乎是大部分搜索机器人。我可以看到对函数的引用在 APplication.cfc 上的位置如下
<cffunction name="onRequest" returnType="void">
<cfargument name="targetPage" type="String" required=true/>
<cfsetting enablecfoutputonly="yes" requesttimeout="20">
<cfparam name="url.refresh" default="0">
<cfset request.strMember = Duplicate(session.strMember)/>
<cfset request.tNow = GetTickCount()>
<cfif url.refresh EQ 0>
<cfset request.iCacheHr = 12/>
<cfelse>
<cfset request.iCacheHr = 0/>
</cfif>
<cflogin>
<cfif IsDefined("session.strMember.sRoles")>
<cfloginuser name="#session.strMember.sFirstName##session.strMember.sLastName#"
password="12345"
roles="#session.strMember.sRoles#"/>
</cfif>
</cflogin>
<cfinclude template="core/incl/SessionLogger.cfm">
<cfinclude template="core/incl/LinkTranslator.cfm">
<cfinclude template="core/incl/udf.cfm">
<cfinclude template="urlcheck.cfm"/>
<cfinclude template="#Arguments.targetPage#">
</cffunction>
因此,任何人都可以就问题所在以及如何解决问题提出建议吗?我对 CF 还很陌生,这让我把剩下的头发都拔掉了
【问题讨论】:
-
Element XMLHOMEPAGE is undefined in a CFML structure referenced as part of an expression. -
还有
Element STRMEMBER is undefined in SESSION -
第二个 -
Element STRMEMBER is undefined in SESSION- 很可能导致您的“错误:从...调用事件处理程序方法时发生异常”可能最好的方法是将其设置为空字符串默认情况下。 -
<cffunction name="onSessionStart"> <cfscript> session.strMember = StructNew(); session.strMember.iMemberId = 0; session.strMember.lSecurityLevels = "Guest"; </cfscript>...这是它的设置位置/方式 -
好的,似乎错误指向
Element XMLZONE is undefined in REQUEST.,代码为<cfscript> variables.aZoneInfo = XmlSearch(application.xmlZones, "//zone[position() = 1]"); try { request.xmlZone = ToString(variables.aZoneInfo[1]); } catch(any expt){ variables.objZoneDAO = CreateObject("component", "#application.sComponentDir#ZoneDAO").init(application.sDSN); variables.objZoneDAO.Read(variables.objZone, 1); } </cfscript>。这只会发生在偶尔的机器人身上。 XML 文件在那里并且适用于所有用户。有什么想法吗?
标签: coldfusion coldfusion-8 application.cfc