我在Drupal 8中开发了一个网站并将其部署到生产中。我为我的内容管理团队创建了7-8个其他帐户,并授予他们创建,编辑和删除内容的有限权限。
最近,我遇到用户登录表单的问题,其中登录偶尔工作。有时我能够在第一次尝试时以管理员身份登录,有时我不是。在后一种情况下,我必须使用重置密码选项通过电子邮件重置密码。但是,此方法仅对单个会话暂时有效,这意味着一旦我注销,我就无法登录。我的内容管理员也遇到了同样的问题。
我尝试过以下的东西,但没有运气。
settings.php
文件禁用服务器代理配置。update.php
文件执行Drupal更新。编辑:我刚刚发现我很幸运地忘记了从另一个浏览器Firefox登录网站上的超级管理员。我进一步调查了解决这个问题并观察了一个模式。当我从Firefox手动清除缓存时,我能够以管理员身份登录(我很幸运地忘记了注销)。但是,这仅适用于一个会话,这意味着在注销后再次出现该错误。为了使登录再次按预期工作,我必须再次从Firefox中清除缓存。
好吧,经过近一周的敲打,我已经找到解决此问题的解决方法,方法是卸载内部动态页面缓存和内部页面缓存模块。
问题是用户登录表单在成功登录后被缓存了。使用Chrome开发人员工具,Drupal会设置并发送以下响应标头。
X-Drupal-Dynamic-Cache: HIT
为了消除这种情况,我不得不卸载上面两个模块。
然而,这只是一种解决方法,而不是解决方案,因为禁用这两个模块将与站点性能进行权衡。
任何知道此问题解决方案的人,请在此处发布。我会尝试它们并更新这个空间。
先感谢您。