帮助讨论:自动登出
一个回报
您好,这段时间我也遇到了这篇论述中提到的情况,不过经过我逐个测试,这些方案中仅有方案四可用。
- 方案一,在桌面版下(域名不带有三级子域名m.)经我测试无效;
- 方案二,实在是太过玄学(或者说是太过偶然);
- 方案三,我以确认用户权限测试无效,甚至即使是使用TW操作也会自动登出;
- 方案四,我认为是唯一可行的方案。即在移动版下(域名带有三级子域名m.),并不再返回桌面版下进行“edit”操作(以手动或是API,可仅浏览),就可以保持正常登录态,只不过移动版的编辑器着实难用。
以上。 --安忆Talk 2020年10月2日 (五) 01:47 (UTC)
- 和鄙人非自确时测试结果相符。在 phab 那边鸽子们 fix 了这个之前大概只能凑合用 m 了。--From RavenclawOIer with love 2020年10月18日 (日) 11:14 (UTC)
2021年10月的测试
问题仍然存在。测试条件如下:
- 桌面版网页
- IP同时被本地和全域封禁
- 账号具有本地IPBE
使用方案一(新版wikitext)稳定避开问题,使用方案二(老版wikitext)几乎抓不到加载缓慢的机会(我的连接变快了)。--Tiger(留言) 2021年11月3日 (三) 17:58 (UTC)
新用户发布更改时显示您的账号已退出
这很有可能是因为MediaWiki:Common.js/edit.js被改坏了,导致新用户只要一发布更改就会退出账号。有人能修复吗?--Q28(留言) 2021年11月6日 (六) 04:29 (UTC)
- 我们的自动登出终于有解了吗?--Milky·Defer 2021年11月6日 (六) 04:32 (UTC)
- 参见WP:AUTOLOGOUT提到的解决方法,及其讨论页中后来关于解决方案的跟进测试。--Tiger(留言) 2021年11月7日 (日) 14:00 (UTC)
导致WP:自动登出的罪魁祸首找到了
嗯,标题越短事情越大。刚刚我找到了导致自动登出的罪魁祸首。
罪魁祸首是每个注册用户都默认会启用的小工具:“在编辑工具栏增加参考文献“引用”功能,可以快捷地使用文献引用模板。参考en:Wikipedia:RefToolbar 2.0(必须在“参数设置”→“编辑”中勾选“启用增强编辑工具栏”)”
只要关掉这个小工具,自动登出就不会发生;反之则会发生。
这是在几天前反馈称使用safemode加载编辑页面即可不受影响后,我开了个新号申请了临时IPBE在浏览器里头一个脚本一个脚本的阻挡加载后发现的。我在阻挡en:MediaWiki:RefToolbar.js的请求后,session就不会再丢失了。一旦解除阻挡,session就会丢失。后来我去偏好设定去关掉这个工具,session也不会丢失;打开就会丢失。
我在相关js代码中没有发现会操纵cookie的内容,所以更详细的技术成因不明。--Milky·Defer 2021年11月10日 (三) 13:14 (UTC)
- 我用这个小工具,但是从未发生过这个登出bug--百無一用是書生 (☎) 2021年11月11日 (四) 09:01 (UTC)
- @Shizhao:因为你测试用的账号应该有一个英维的附加账户。在没有英维附加账号的时候,试图跨域访问请求由于被IP封锁的缘故,无法自动创建enwiki的本地账号。此时在中维访问英维的内容的时候,送出去的cookie没有办法被英维认证,软件就会在返回的header当中把相关的中央认证的cookie删掉。然后由于refToolbar的本地化文本在中维本地加载,然后此时浏览器发请求的时候发不出去中央认证的cookie,导致中维本地认为你的登陆会话有问题,把你中维的登陆相关cookie也删了。然后你就自动登出了。
- 我刚刚关了代理打开了编辑界面,导致我被自动在英维本地开了个账号,之后我再打开代理就没有自动登出问题了。--Milky·Defer 2021年11月11日 (四) 10:47 (UTC)
- 所以不是mediawiki的bug?只是因为用代理的新用户才有这个问题?--百無一用是書生 (☎) 2021年11月11日 (四) 11:17 (UTC)
- 把en:MediaWiki:RefToolbar.js放到本地是不是就没这个问题了?另外,其他小工具如果也有跨域,是不是也存在同样问题?--百無一用是書生 (☎) 2021年11月11日 (四) 11:19 (UTC)
- 至少,除了中维和英维我不记得有什么站点会积极封掉所有代理地址的。所以大概如果你的小工具跨域到没有封VPN的站点应该还是没问题的。--Milky·Defer 2021年11月11日 (四) 11:21 (UTC)
- 如果这算是程序(特指中央认证插件)的逻辑问题的话,也算是bug。目前而言,我们能做的就是立刻关掉对所有人都默认打开的RefToolbar并提醒这个可能会导致自动登出。剩下的就看phab有没有人修了。--Milky·Defer 2021年11月11日 (四) 11:20 (UTC)
- 感觉上如果封禁的时候选了禁止注册账号,那么就不应该算是程序逻辑问题吧--百無一用是書生 (☎) 2021年11月11日 (四) 11:27 (UTC)
- 咦,只是加载js的话,不应该有登录问题啊--百無一用是書生 (☎) 2021年11月11日 (四) 11:29 (UTC)
- 从开发者调试工具那里查看到的HTTP加载请求来看似乎不是这样的,就算是加载js人家也老老实实送了登录cookie过去……--Milky·Defer 2021年11月11日 (四) 11:41 (UTC)
- 我觉得逻辑问题是人家不应该把中央认证的cookie一起删了才对。不知道为什么会变成这样。--Milky·Defer 2021年11月11日 (四) 11:43 (UTC)
- 咦,只是加载js的话,不应该有登录问题啊--百無一用是書生 (☎) 2021年11月11日 (四) 11:29 (UTC)
- 感觉上如果封禁的时候选了禁止注册账号,那么就不应该算是程序逻辑问题吧--百無一用是書生 (☎) 2021年11月11日 (四) 11:27 (UTC)
- 把en:MediaWiki:RefToolbar.js放到本地是不是就没这个问题了?另外,其他小工具如果也有跨域,是不是也存在同样问题?--百無一用是書生 (☎) 2021年11月11日 (四) 11:19 (UTC)
- 所以不是mediawiki的bug?只是因为用代理的新用户才有这个问题?--百無一用是書生 (☎) 2021年11月11日 (四) 11:17 (UTC)
总结一下触发条件就是:
- 你的账号在中央认证中没有英维本地账号(可以解释为什么有人不会出现问题,毕竟英维附加账号很少有人会没有)
- 你的IP地址在英维本地被封锁(这样你在访问时不会被自动创建一个)
- 你在中维拥有IP封锁例外权限(仅保证你点击编辑后会加载编辑框,如果你的IP在中维本地未封锁而英维本地封锁的话我猜一样会发生这个问题)
- 你使用的编辑器会加载RefToolbar插件(目前似乎仅2010 wikitext编辑器,可以解释为什么2017 wikitext编辑器没有问题)
- 你编辑的时候真的加载了上述插件(可以解释为什么你抢在加载前直接发布不会出现问题)
是否是自动确认跟这个问题基本无关。
以上。我ping几个技术帝@Shizhao、AnYiLin、WhitePhosphorus、Xiplus:可以帮我验证一下我的上述猜测吗? --Milky·Defer 2021年11月11日 (四) 11:17 (UTC)
- 随手翻了一下,MediaWiki:Gadget-HotCat.js, MediaWiki:Gadget-wikEd.js, MediaWiki:Gadget-ProveIt.js, MediaWiki:Gadget-popups.js, MediaWiki:Gadget-WikiMiniAtlas.js(还有更多)也有跨域问题,是不是也会触发登出bug?--百無一用是書生 (☎) 2021年11月11日 (四) 11:25 (UTC)
- 我不知道,我的测试账号已经有英维本地账号了,再叫我复现也不可能了。除非我再开一个,到时候又要重新去申请权限。--Milky·Defer 2021年11月11日 (四) 11:27 (UTC)
- 还有就是,RefToolbar的加载是两阶段的,会先跨域加载一个refToolbarBase.js,根据我当时的观察,那个时候返回了英维登陆相关的cookie,但是似乎是无效cookie。之后再向英维加载了RefToolbar.js,这第二次加载导致删除了cookie。再之后向中维本地加载了第三个本地化RefToolbar的组件,导致中维本地的cookie也被删掉了。我个人的推断是,导致自动登出是第三阶段的结果,其他小工具如果没有这三阶段很难说也会导致问题。--Milky·Defer 2021年11月11日 (四) 11:32 (UTC)
- 嗯,看到了,只要跨域加载js,就会有相关的会话cookie。似乎是中央认证插件或者mediawiki本身,只要看到访问的是本域(比如en.wikipedia.org),就会自动去走中央认证和登陆的工作流,不管客户端打开的是什么url。而照道理来说,单纯请求一个js、css以及图像文件的url的话,没必要去用户认证--百無一用是書生 (☎) 2021年11月11日 (四) 11:52 (UTC)
- 还有就是,RefToolbar的加载是两阶段的,会先跨域加载一个refToolbarBase.js,根据我当时的观察,那个时候返回了英维登陆相关的cookie,但是似乎是无效cookie。之后再向英维加载了RefToolbar.js,这第二次加载导致删除了cookie。再之后向中维本地加载了第三个本地化RefToolbar的组件,导致中维本地的cookie也被删掉了。我个人的推断是,导致自动登出是第三阶段的结果,其他小工具如果没有这三阶段很难说也会导致问题。--Milky·Defer 2021年11月11日 (四) 11:32 (UTC)
- 我不知道,我的测试账号已经有英维本地账号了,再叫我复现也不可能了。除非我再开一个,到时候又要重新去申请权限。--Milky·Defer 2021年11月11日 (四) 11:27 (UTC)
- Nice catch! 我把重现步骤写在任务说明了。--Xiplus#Talk 2021年11月11日 (四) 12:53 (UTC)
似乎需要服务器端发送的cookie里定义path,js等的url排除在外就可以避免这个问题?目前cookie中的path都是/,也就是全部路径(但似乎实现不了?不是很懂)--百無一用是書生 (☎) 2021年11月11日 (四) 12:14 (UTC)
- 这种事情大概要去找phab解决,这是mediawiki软件写的。事实上我还想多等几个技术帝的意见(刚刚忘记ping老虎君了,补一下)。 --Milky·Defer 2021年11月11日 (四) 12:20 (UTC)
- (嘛我收到了你在phab上那个task留言的通知)--Tiger(留言) 2021年11月11日 (四) 12:26 (UTC)
- 我的意思是,按照目前的程序逻辑,mediawiki那边看起来也不太会有办法(从cookie角度看的话),除非改逻辑,才有可能。所以我觉得这个问题如果要解决,也挺麻烦的,不是马上能修好的--百無一用是書生 (☎) 2021年11月11日 (四) 12:30 (UTC)
- mw:Extension:CentralAuth上有几个cookie相关的设置,不知道有没有与这个问题相关的。--百無一用是書生 (☎) 2021年11月11日 (四) 12:53 (UTC)
- 我对这个问题的紧急程度不是很清楚,不过我们是不是先要去更新WP:自动退出页面的内容啊?从原理而言,向一个没有当地账号又没法自动创建当地账号的地方连发两次请求就会导致自动登出。知道了原理之后应该就能想出更多临时性的workaround出来。--Milky·Defer 2021年11月11日 (四) 13:27 (UTC)
- mw:Extension:CentralAuth上有几个cookie相关的设置,不知道有没有与这个问题相关的。--百無一用是書生 (☎) 2021年11月11日 (四) 12:53 (UTC)
- 如果是发送两次的问题话,把第一个url给改成
//en.wikipedia.org/w/load.php?modules=ext.gadget.refToolbarBase
就可以解决了?-- Sunny00217 2021年11月12日 (五) 11:18 (UTC)- 能不能有一个脚本,自动检测有没有发生自动登出情况,并在这种情况下弹出窗口提醒查看相关页面?--Milky·Defer 2021年11月15日 (一) 05:47 (UTC)
- 这有什么区别?不还是跨域加载了么?--百無一用是書生 (☎) 2021年11月16日 (二) 07:03 (UTC)
@Shizhao、AnYiLin、WhitePhosphorus、Xiplus、Tigerzeng:各位,phab那边,维护CentralAuth的人已经知悉了这个问题,应该有望得到较快的解决(我还被他送了个星章)。目前在尚未解决之时,phab建议临时把RefToolbar的代码拷贝到中维,并安排一个具有界面编辑员权限的机器人定时同步代码,可以暂时避免这个问题。--Milky·Defer 2021年11月16日 (二) 05:36 (UTC)
- 不只一个小工具引用其他维基的JS,RefToolbar载入的程式码也不只一个档案,该临时修复方案恐成本过大。--Xiplus#Talk 2021年11月16日 (二) 05:43 (UTC)
- 同意Xiplus的意见,除非只有这一个工具导致该问题或许还可以考虑--百無一用是書生 (☎) 2021年11月16日 (二) 06:58 (UTC)
- 目前新用户遇到的自动登出情况应该基本上都是这个造成的(我也拿自己的分身测试了一下,也是一关闭就没问题,一打开就疯狂登出)。 ——魔琴 [ 已经告假 留言 贡献 ] 2021年11月21日 (日) 08:43 (UTC)
- @Shizhao、AnYiLin、WhitePhosphorus、Xiplus、Tigerzeng:所以说要不要先临时关了reftoolbar缓解燃眉之急?--Milky·Defer 2021年11月26日 (五) 12:35 (UTC)
- 上面是不是提到把它放到本地就没问题?是的话我觉得那样就可以。--安忆Talk 2021年11月26日 (五) 12:48 (UTC)
- 如果是放到本地的话,会破坏自动跟进上游更新,因此phab的建议是可以开一个IA权限机器人实时同步--Milky·Defer 2021年11月26日 (五) 12:52 (UTC)
- 这边最近把定期更新这个功能做出来了。若有需要请再通知。--Kanashimi(留言) 2021年12月5日 (日) 00:32 (UTC)
- 如果是放到本地的话,会破坏自动跟进上游更新,因此phab的建议是可以开一个IA权限机器人实时同步--Milky·Defer 2021年11月26日 (五) 12:52 (UTC)
- 上面是不是提到把它放到本地就没问题?是的话我觉得那样就可以。--安忆Talk 2021年11月26日 (五) 12:48 (UTC)
- @Shizhao、AnYiLin、WhitePhosphorus、Xiplus、Tigerzeng:所以说要不要先临时关了reftoolbar缓解燃眉之急?--Milky·Defer 2021年11月26日 (五) 12:35 (UTC)
- 目前新用户遇到的自动登出情况应该基本上都是这个造成的(我也拿自己的分身测试了一下,也是一关闭就没问题,一打开就疯狂登出)。 ——魔琴 [ 已经告假 留言 贡献 ] 2021年11月21日 (日) 08:43 (UTC)
- 同意Xiplus的意见,除非只有这一个工具导致该问题或许还可以考虑--百無一用是書生 (☎) 2021年11月16日 (二) 06:58 (UTC)
- CentralAuth的维护者在IRC上回复我说,目前这个插件完全由志愿者维护,而他们既没有时间也没有精力去修复这个bug。不过如果有人交patch的话,他们会很乐意审。所以比较好的方案是本地懂PHP的人直接修复掉。--Tranve (✉) 2021年12月2日 (四) 11:17 (UTC)
先默认关闭比较好,等phab修复问题再开启。有跨域造成问题的一并都关闭,小工具本来也不是mw的功能,没有必要一定要用。桐生ここ★[讨论] 2021年11月30日 (二) 11:22 (UTC)
- @桐生ここ:实际上,台湾分会那边的人跟我说,他们在做线下推广和教学的时候会用到(很依赖)reftoolbar,所以要是默认直接关掉了恐怕还是会搞出些问题的,我们也没法依照账号所属地域去开启关闭小工具……--Milky·Defer 2021年11月30日 (二) 12:18 (UTC)
- 方案一,台湾分会教学计划多加一个“如何打开reftoolbar”。方案二,在IP全域封禁的提示那边加一个自动登出的链接。 ——魔琴 [ 已经告假 留言 贡献 ] 2021年12月3日 (五) 05:27 (UTC)
建议改名:“Wikipedia:自動登出”→“Help:自動登出”
“Wikipedia:自動登出” → “Help:自動登出”:内容偏向技术操作,应放入Help空间里--173.75.31.249(留言) 2022年3月14日 (一) 16:19 (UTC)
分享申请英文维基百科强制创建本地账号(Force Local Account Creation)模版
我发了多封邮件尝试解决这个问题,最终[email protected]帮助我解决了问题。
邮件必须要表述清除以下几点:
1.我在中文维基百科上有账号了
2.我的账号名是
3.我不是来申请ip豁免的(Not for IP block exception)
4.我是来申请在英文维基百科上强制创建本地账号(Force Local Account Creation in the English Wikipedia)的。
不然很容易引起误解,从而像我一样花了4封邮件才解决问题。
以下是我成功解决问题的那封邮件:
Apply for "Force Local Account Creation"
I'm not here to apply for ip blocking exceptions, I already have a Chinese wikipedia account that has ip block exceptions. But because I need to use a VPN to access Chinese Wikipedia, it caused me to encounter an identified program error with Chinese Wikipedia - autologout. (https://phabricator.wikimedia.org/T244635,https://zh.wikipedia.org/wiki/Help:%E8%87%AA%E5%8B%95%E7%99%BB%E5%87%BA)
The solution is given in the link to report the bug and in the Chinese Wikipedia related page, which is to request from you to force local account creation in the English Wikipedia. Maybe you can read the link I attached for more information.
Here's some info you might need:
My username on Chinese Wikipedia:(你的用户名)
I look forward to hearing from you.
英文维基人很给力,在描述清楚后几个小时就回复了——“Done.”
祝各位可以高效快速的解决这个问题。--AnEht(留言) 2023年8月25日 (五) 08:14 (UTC)
- 邮件不回啊。--Gongxiang01(留言) 2024年4月27日 (六) 13:26 (UTC)
- 我重发了一次。可以看一下我发布的时间。--Gongxiang01(留言) 2024年4月27日 (六) 14:22 (UTC)
不要使用无痕模式
如果你使用的是Microsoft Edge,如果强制创建本地账号成功之后,别开无痕模式(InPrivate 模式)。之后多登录几次就好了。我用的Proxyium。 --Gongxiang01(留言) 2024年4月27日 (六) 14:22 (UTC)
- 现在也不行了。--Gongxiang01(留言) 2024年4月28日 (日) 11:18 (UTC)
无效
目前有时可以保持,但是有时候可以。我已经申请强制创建英文维基百科的本地账号了,但是我有时候还是自动登出,就好像这个文章写的内容完全错误似的。怎么回事啊?--Gongxiang01(留言) 2024年5月8日 (三) 15:11 (UTC)
- 这我就不知道了,我之前写邮件申请强制创建英文维基百科的本地账号就不再有这个问题了,要不你排查一下你的本地环境浏览器有没有什么奇奇怪怪的脚本或者插件?尝试用无痕模式访问维基?--AnEht(留言) 2024年6月26日 (三) 09:52 (UTC)
我终于发现了一个到目前一直有效的方法
登录的时候先点一下,之后快速的勾上“保持我的登陆状态”的checkbox,之后如果提示“你已经以Template:USERNAME的身份登录”就成功了。--此条未正确签名的留言由Gongxiang01(讨论|贡献)于2024年5月11日 (六) 14:17 (UTC)加入。
关于Help:自动登出中的一个解决方案的疑问
各位好!我总是被反复自动退出登陆,于是我找到了Help:自动登出这篇条目。里面有一节叫做“申请在英文维基百科强制创建本地账号”。但是我发现,按照指引(我选的是“我还没有账号”,因为如果我选择“我已经有了账号”,那么,会提示“You are in the wrong place.”,似乎没有能够帮上忙的选项)来到英文Wikipedia的申请界面后,如实填写自己的用户名后会提示“I'm sorry, but the username you selected is already taken. Please try another.”,所以申请无法成功提交。因此我想询问:这个方法目前是否还有效?是不是我选错了什么选项?如果可以的话,麻烦告知我如何在英文Wikipedia正确申请强制创建本地账号,万分感谢!因为我在英文Wikipedia由于IP封禁且没有IPBE,无法在那边的求助区提问,所以来此寻求解决方案。--Bingchuanjuzi(留言) 2024年7月28日 (日) 01:04 (UTC)
- 或许可请求一位英维的管理员协助,于en:Special:CreateLocalAccount页面操作。Irralpaca(留言) 2024年7月28日 (日) 03:32 (UTC)
- 我想询问一下,应当如何请求英文维基百科管理员协助?我甚至没法在那登录我的账户,自然也没法编辑任何条目/讨论页。--Bingchuanjuzi(留言) 2024年7月28日 (日) 03:51 (UTC)
- 之前客栈有用户提这个问题的时候是有其他用户协助去英维的管理员布告板发布了请求,不过最后似是没有得到回应。Irralpaca(留言) 2024年7月28日 (日) 04:05 (UTC)
- 我想询问一下,应当如何请求英文维基百科管理员协助?我甚至没法在那登录我的账户,自然也没法编辑任何条目/讨论页。--Bingchuanjuzi(留言) 2024年7月28日 (日) 03:51 (UTC)
- @Bingchuanjuzi:我觉得可能是英文那边没考虑到强制建立账号的问题。可以尝试邮件联系accounts-enwiki-l lists.wikimedia.org ——魔琴[身份声明 留言 贡献 新手2023] 2024年7月28日 (日) 04:05 (UTC)
- 已经发邮件了。不知道能不能解决问题。--Bingchuanjuzi(留言) 2024年7月28日 (日) 04:50 (UTC)
- 先找一个没被封禁的梯子,然后在登录账号的情况下,打开w:Wikipedia:Sandbox做一次编辑,就好了--Bovemdep(留言) 2024年8月2日 (五) 14:50 (UTC)
- 找到没封禁的IP可能没那么简单…… ——魔琴[身份声明 留言 贡献 新手2023] 2024年8月5日 (一) 15:08 (UTC)
- 好点的机场一般ip都没被封--Bovemdep(留言) 2024年8月6日 (二) 09:27 (UTC)
- 找到没封禁的IP可能没那么简单…… ——魔琴[身份声明 留言 贡献 新手2023] 2024年8月5日 (一) 15:08 (UTC)
- 先找一个没被封禁的梯子,然后在登录账号的情况下,打开w:Wikipedia:Sandbox做一次编辑,就好了--Bovemdep(留言) 2024年8月2日 (五) 14:50 (UTC)
- 已经发邮件了。不知道能不能解决问题。--Bingchuanjuzi(留言) 2024年7月28日 (日) 04:50 (UTC)
- 另一种解决思路是我们将全部小工具迁移到本地。--桐生ここ★[讨论] 2024年8月5日 (一) 15:30 (UTC)
- MediaWiki没有适合小工具的分散式版本控制,连同站的小工具pr都能长时间无人理会,迁移到本地只会无人维护。——暁月凛奈 (留言) 2024年8月5日 (一) 21:28 (UTC)
意外登出问题
我在浏览或编辑维基百科时会时不时地出现意外登出的情况。这发生得毫无征兆,我可能在刷新页面甚至是编辑过程中自动登出。重启电脑或浏览器以及手机端使用不会导致登出。我指的并不是右上角自动显示用户名并能一键登入的那种。这可能因为我的浏览器安装了隐私獾和duckducgo privacy essentials,但是它们都没有提示拦截了维基百科。尽管chrome可以帮我自动填写密码,但我仍然感到麻烦,我害怕这会导致我的编辑记录等信息丢失。请问我应当如何解决这一问题,或者说这会不会给我带来实质性的影响?--BlueVitriolSensei(留言) 2024年8月28日 (三) 08:26 (UTC)