问题描述


登录 Confluence 后登录 Jira 应用程序时,您的 Confluence 会话会过期,您需要重新进行身份验证。保存 Confluence 页面时,显示以下错误:

- 您的会话已过期。您可能需要重新提交表单或重新加载页面。

jira-error02

jira-error01

问题原因


Atlassian 应用程序会将您的成功登录信息以名为 JSESSIONID 的 Cookie 形式存储在您的浏览器中。您的浏览器会将此 Cookie 存储在域名对应的路径下,该路径不识别端口。在上述示例中,每个实例都将会话 Cookie 存储在“/”或根路径下。Confluence 的 JSESSIONID 将被其他 Atlassian 应用程序的 JSESSIONID 覆盖。

如果Confluence和Jira运行在同一台服务器,并且使用相同的URL进行访问,唯一区别只是访问端口不同而已,那么就会出现Cookie被互相覆盖,也就会出现上面图片中的问题!

解决方案


1、首先停止Jira和Confluence程序

2、将sessionCookieName属性添加到/conf/context.xml

# Confluence
sed -i 's/<Context>/<Context sessionCookieName="CONFLUENCESESSIONID">/' /opt/atlassian/confluence/conf/context.xml

# Jira
sed -i 's/<Context>/<Context sessionCookieName="JIRASESSIONID">/' /opt/atlassian/jira/conf/context.xml


jira-error03

jira-error04

3、重新启动 Confluence 和 Jia

注意:context.xml 中的任何更改都不会在 Confluence 升级时自动应用。升级版本后需要手动重新应用上面的这些更改。

4、通过浏览器F12检查

jira-error05