Session 在Railo中,如何删除cookie?

Session 在Railo中,如何删除cookie?,session,cookies,coldfusion,railo,Session,Cookies,Coldfusion,Railo,我使用的是Railo-CFML,它似乎没有使用application.cfc/.cfm,因为我已经从文件夹中删除了这些内容,并且它的工作原理是一样的。这么说吧 我试图在有人注销我的应用程序时强制删除cookies。在我强制更改cookie中的信息后,如何恢复信息 我已经实际删除了cookie,它会强制更新CFID。然而,这是我唯一一次能够更改CFID。我更深入地研究了cookie,并使用我的web开发者工具包,cookie将于2045年到期 我已经在这里搜索了几个小时,寻找有效的方法,我可以告诉

我使用的是Railo-CFML,它似乎没有使用application.cfc/.cfm,因为我已经从文件夹中删除了这些内容,并且它的工作原理是一样的。这么说吧

我试图在有人注销我的应用程序时强制删除cookies。在我强制更改cookie中的信息后,如何恢复信息

我已经实际删除了cookie,它会强制更新CFID。然而,这是我唯一一次能够更改CFID。我更深入地研究了cookie,并使用我的web开发者工具包,cookie将于2045年到期

我已经在这里搜索了几个小时,寻找有效的方法,我可以告诉你,到目前为止,他们在其他项目上工作,我已经在工作,但由于某种原因,我不能让它在当前的项目上工作。只是提醒一下,我是这个网站的第15位程序员

以下是我正在使用的一些代码:


Cookie Deleted:#delete#u Cookie#
以下是我得到的信息:
在我使用该代码之前。
范围
_ga字符串ga############
cfid字符串(随机字母和数字)
cftoken字符串50

使用该代码后,我得到:
范围
_ga字符串0
cfid字符串0
cftoken字符串50

这是我尝试两种不同的方法来完成工作。


然而,在我运行此程序并查看我的站点cookie后,我仍然看到CFID的有效期为2045。

进一步研究后,我发现我的Railo服务器管理员的会话在90天后会超时。这已更改,会话将在20分钟后过期。因此,如果您使用railo,请确保更新web管理员,而不仅仅是服务器管理员。吸取的教训。谢谢大家。也非常感谢您帮助解决这个问题

您的代码可以很好地处理Railo上的cookie值。代码完成后,Railo似乎正在执行会话管理任务,并将cfid cookies设置回原处

即使您可以更改cfid cookie值,现有会话仍将存在。那些可以使用url中的cfid查看会话的人仍然可以使用相应的会话,直到会话自然超时。要使Railo 4或更高版本中的会话无效,可以使用
SessionInvalidate()
。此函数将更新客户端cfid,并强制当前会话过期


在不了解您的应用程序的更多信息的情况下,我不确定使会话无效是否会解决您一直在处理的安全问题。

也许您应该提供一些您尝试过的代码。您可能还想了解Application.cfc的功能和使用方法。我已经阅读了这篇文章,这是一个很好的资源。@Abram我添加了一些代码供您查看。这是一个很好的资源,您可能还想再读一遍,因为您似乎不明白Application.cfc在做什么。好奇的是,你为什么要删除cfid和cftoken cookies?为什么使用cookies而不是会话范围?我理解Application.cfc的重要性。但是,Application.cfc不用于此站点。为什么,我不知道。我来到一个网站,这些年来有大约15个不同的程序员,我正在努力清理它,使它更安全。我一直在尝试将cookies转换为会话作用域,我希望有人能提出一些建议,这是railo中的一个切换,我看得太多了。太好了!那很好用!非常感谢你。使用该选项和较短的会话结束计时器。这将非常有效。非常感谢。
<cfcookie
name="CFID"
value="Dead"
expires="NOW"> 
<cfcookie
name="cfid"
value="Dead"
expires="NOW">

<cfset structClear( session ) />

<cfset delete_cookie=StructDelete(cookie,"CFID")>

<cfcookie name="CFID" value="0" expires="Thu, 01-Jan-70 00:00:01 GMT">
<cfoutput>Cookie Deleted: #delete_cookie#<br /></cfoutput>

 <cfset delete_cookie=StructDelete(cookie,"cfid")>
<cfcookie name="cfid" value="0"expires="Thu, 01-Jan-70 00:00:01 GMT">

<cfset delete_cookie_ga=StructDelete(cookie,"_ga")>
<cfcookie name="_ga" value="0"expires="Thu, 01-Jan-70 00:00:01 GMT">
<!--- Redirect back to index page. --->
<!----<cflocation
url="/"
addtoken="false"
/>--->
<cfdump var=#cookie#>