多个域上的域级会话 cookie
如果您希望 ColdFusion 将会话 cookie 创建为域级别 cookie,例如 .bar.com 而不是 foo.bar.com,那么您可以在 jrun-web.xml 中进行配置:-
<session-config>
<cookie-config>
<active>true</active>
<cookie-domain>.bar.com</cookie-domain>
</cookie-config>
<persistence-config>
<active>false</active>
</persistence-config>
</session-config>
但是,这是一个实例范围的设置,因此如果如果您希望在该实例上运行两个应用程序,或者实际上运行一个具有或多个不同顶级域的应用程序,那么其中一个应用程序的会话将无法正常工作。
有没有一种方法可以将多个域添加到 jrun-web.xml 并让它选择相关的域?
谢谢。
If you want ColdFusion to create your session cookie as a domain level cookie e.g. .bar.com rather than foo.bar.com then you can configure that in the jrun-web.xml:-
<session-config>
<cookie-config>
<active>true</active>
<cookie-domain>.bar.com</cookie-domain>
</cookie-config>
<persistence-config>
<active>false</active>
</persistence-config>
</session-config>
However, this is an instance wide setting so if you want to run two applications on that instance or indeed one application with or more different top-level domains then one of them will have sessions that do not work.
Is there a way to add multiple domains to the jrun-web.xml and have it pick the relevant one?
Thanks.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
我设法找到jrun-web.xml的DTD< /a> (顶部的链接 @ 指向已失效的 Macromedia URL)。
这指定 XML 中只能有一个
节点。我还测试了域名列表,例如:这也不起作用。
不是一个绝对的答案,但我怀疑这可能是不可能的(!),并且通过 jrun-web.xml 肯定不可能(我想这至少回答了您的问题之一)。
I managed to find the DTD for jrun-web.xml (the link @ the top points to a defunct Macromedia URL).
This specifies that there can be only one
<cookie-domain>
node in the XML. I've also tested a list of domain names, eg:And that doesn't work either.
Not an absolute answer, but I suspect that it's possibly not possible (!), and it's certainly not possible via jrun-web.xml (which I guess answers one of your questions at least).
这会将您的 cfid 和 cftoken cookie 设置为域 cookie (*.bar.com),而不是特定于主机的值 (foo.bar.com)。
CFApplication(请参阅有关 setDomainCookies 的部分)
This will set your cfid and cftoken cookies as domain cookies (*.bar.com) rather than the host-specific values (foo.bar.com).
CFApplication (see the section on setDomainCookies)
我认为您可以使用
来设置域 cookie,而不是
?I think you could use
<CFHEADER>
to set domain cookies instead of<CFCOOKIE>
?我认为,如果您使用 cgi.server_name 变量命名您的应用程序,并且您的每个站点都使用相同的 application.cfc 或 application.cfm 文件,那么您的会话和 cookie 变量将针对每个单独的站点正确确定范围。例如:
I think if you name your application with the cgi.server_name variable, and each of your sites uses the same application.cfc or application.cfm file, then your session and cookie variables will be properly scoped for each individual site. For example: