登录页面错误:由于意外输出,cookie被阻止


13

我有一个最近发现的WordPress网站在登录页面上出现此错误:

错误:由于意外输出,cookie被阻止。要获得帮助,请参阅此文档或尝试支持论坛。

我只能从访问登录页面wp-login.php,因为/wp-admin/显示空白页面。

我在网上搜索并尝试了许多失败的尝试:

  • 卸下?>并在其末端留出空间functions.php

  • 从而确保了functions.phpwp-config.php曾在开头或末尾没有空格

  • 在Notepad ++中打开wp-config.phpfunctions.php转换为UTF-8(人们建议使用“不带BOM”,但这只是Notepad ++最新版本中的一个选项-我想UTF-8现在可以这样做)

  • 我设置WP_DEBUG为true,并且没有收到任何错误debug.log,除了2个与我尚未完全上传某些文件有关的错误。提到那个特别的错误nav-menu.php; 这确认它正在报告错误,只是与我的登录问题无关

  • _tmp在结尾处重命名了每个插件文件夹,以尝试排除导致问题的所有插件

  • 我还重命名了plugins文件夹,以同时排除所有插件

鉴于我已经尝试了这些事情,并且没有收到任何PHP错误,我还能尝试什么?


您能否分享您的网站网址?想通过访问/wp-login.phpURL 实际看到。
Prasad Nevase '16

2
在同一主机的子域或子目录中全新安装WordPress是否存在相同的问题?
Alexey,2016年

您解决了这个问题吗?如果是这样,怎么办?
MatoBehr

你可以在这里查阅本指南,此修订- truetutorials.com/...

Answers:


6

此错误在wp-login.php中生成,如果服务器无法设置cookie,则会发生此错误,这可能由于多种原因而发生,常见问题之一是:在设置cookie之前发送了输出。

试用以下选项:

  • 更新WordPress核心(如果不是最新的)
  • 更改主题,如果您正在使用自定义主题,只需将ftp输入服务器并删除自定义主题文件夹,WordPress将还原为默认主题。
  • 如果问题仍然存在,请重命名插件文件夹

同时检查错误日志,错误可能不会打印到屏幕上。


“ ..或cookie被禁用”?不,不是这个。
Croll 2016年

@DmitrijA感谢您指出,您是对的,禁用了cookie,错误消息有所不同。更新了答案
Fiaz Husyn '16

如果无法登录WP,该怎么做?我剩下的唯一访问权限是FTP。
MatoBehr

@MatoBehr如果仍然存在错误而不是重命名插件文件夹,请使用FTP删除您的自定义主题文件夹。另请检查错误日志以查看为什么会生成此错误
Fiaz Husyn

5

您可以按照以下步骤操作:

  1. 重命名themes目录和plugins目录。
  2. 现在访问/ wp-admin /或/wp-login.php。我希望这次可以。
  3. 如果步骤2可行,则登录到仪表板。
  4. 现在,themes再次将目录重命名为themes
  5. 然后,访问Appearance菜单并激活任何默认的wordpress主题。
  6. 希望这一点您也可以访问前端。
  7. 如果可行,那么现在您可以尝试激活以前使用的主题。如果这样可行,那么您的他们可能没有任何问题。
  8. 如果第7步有效,则可以将plugins目录重命名为,plugins然后查找是否存在任何有问题的插件。如果那再次打乱了您的站点,请再次重复步骤1-6。如果步骤7不起作用,请再次重复步骤1-6。在这种情况下,您的主题有一些问题。修理它。

希望对您有用。谢谢


4

第1步:检查错误日志,以查看导致错误的文件。检查错误日志文件可帮助您了解导致问题的确切原因。

错误记录

步骤2:如果错误类似 “无法修改标头信息–标头已经发送过(输出开始于),然后显示文件路径以及wp-login.php文件的路径和行号。这将确认您是UTF-8 BOM问题,您可以找到出现问题的文件。

记事本转换

步骤3:打开文件(在我的情况下是“ custom-posts.php”文件),导致记事本++中出现错误。它将显示菜单中“编码”选项下选择的“以UTF-8编码。您需要确保选择了“在没有BOM的情况下以UTF-8编码”,而不是在“在没有BOM的情况下以UTF-8 编码”,然后单击“在没有BOM的情况下转换为UTF-8”,在文件的任何位置按Enter键,然后保存。

它为我工作;但是,在某些情况下,这可能是插件问题,重命名plugins文件夹可能会有所帮助。但是在进行任何更改之前,请确保已检查了错误日志,以使您知道自己在做什么。



2

根据我的观点,这与某些主题相关。请执行以下步骤,希望这将为您解决。

1. WP_DEBUGTRUE 设置的值WP_DEBUG,以TRUE你的wp-config.php文件。这将在wp-login.php页面上给您有意义的错误消息。解决方案完成后,您可以回滚此更改。

2.查看错误
一旦您设置TUREWP_DEBUG,你可能会无法修改标题信息的错误消息。根据该消息,我们可以假定您的主题可能存在问题。

3.重命名主题文件夹
如果是第2点,则需要用某个值(即mytheme TO mytheme1)重命名活动主题文件夹的名称。您将能够登录,尽管它将默认使用当前的默认主题。

4.再次激活主题
完成第3步并成功登录后,您可以再次遇到相同的空白页问题。不必担心,因为这是由于第3点而引起的。从管理面板>外观>主题中激活可用的主题之一。

注意:不要选择您的旧主题(即我们将其重命名为第3点),因为该主题有问题。解决该问题后,您可以再次使用该主题。

对于与主题相关的问题,您可以通过检查日志文件来检查问题所在。

如果仍然遇到相同的问题,则意味着您需要尝试其他选项,例如:
1.您需要更新wordpress版本。检查如何
2.使所有插件无效,然后再次将其激活。

大功告成!希望这对您有帮助。


1

似乎很奇怪error.log没有显示任何内容...

为了完全排除BOM字符,我会尝试手动将您从其他来源复制的任何代码(输入functions.phpwp-config.php)重新键入到您确定为UTF-8格式的文档中。即使在程序中更改了文档格式,字符仍然可能保留。

补充说明:如果不确定您的Notepad ++版本是否支持“无BOM”,请尝试使用其他编辑器。您可能只需要针对此特定问题使用其他方法即可。

除此之外,您是否尝试过完全替换wp-login.php文件?您可以尝试这样做和/或替换整个wp-admin文件夹。如果您nav-menus.php无法正确上传文件,则其他文件/目录也可能失败或部分上传。


0

我遇到了同样的问题,我解决了。我只需连接FTP并更改主题和插件文件夹名称,就可以毫无问题地访问wp admin。希望这对其他人有帮助。

谢谢,尼罗什


0

我遇到了同样的问题,仅重命名主题文件夹即可登录仪表板。所以问题出在我的主题上。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.