如何修复 WordPress 中的“由于意外输出导致 Cookie 被阻止”错误

我们在给 WordPress 用户排查网站问题时,多次遇到“由于意外输出导致 Cookie 被阻止”的错误

这也是一个比较常见问题,可能会阻止登录访问 WordPress 仪表盘,总在关键时刻掉链子。通常,这个错误会在进行一些小调整后出现,例如编辑主题启用插件,找到问题原因还是比较头疼的。但也别担心,这个问题是完全可以修复的。

在本篇文章中,会分享解决这个错误的具体步骤,恢复网站。

图片[1]-如何修复WordPress“由于意外输出导致Cookie被阻止”的错误(详细指南)

什么导致“由于意外输出导致 Cookie 被阻止”错误?

根据我们的经验,当自定义代码片段、WordPress 插件或主题产生意外输出,导致 WordPress 文件无法按正确顺序加载时,就会出现这个错误。

WordPress 在后台运行一系列特定指令让网站正常运作。如果某个过程被打断,WordPress 可能会出现异常行为。

在这种情况下,错误发生是因为 WordPress 无法设置登录 Cookie,就算其余代码加载正常。

错误示例:由于意外输出导致 Cookie 被阻止

图片[2]-如何修复WordPress“由于意外输出导致Cookie被阻止”的错误(详细指南)

这个小问题会带来很大的不便。例如,它可能会阻止管理员和其他用户登录 WordPress 网站。

下面是我们常见的一些导致这个错误的原因:

1. PHP 文件中的额外空白

  • 文件如 wp-config.php 或插件文件中无意添加的空格或空行可能导致此问题。

2. 插件冲突

  • 某些插件可能会输出意外内容,干扰 Cookie 的正常设置。

3. 旧版本的 WordPress 核心、插件或主题

  • 使用旧版本可能导致兼容性问题和错误。

4. 自定义代码

  • 如果最近在网站添加了自定义代码,这可能是导致问题的原因。

5. 主机环境问题

  • 在极少数情况下,服务器配置错误也可能导致此错误。

    了解这些原因后,从哪里开始排查问题就有思路了。在接下来的部分中,我们会逐步指导如何修复这些问题。

    如何修复“由于意外输出导致 Cookie 被阻止”错误

    修复这个错误看起来很棘手,但实际上比想象的要简单。我们从最常见的错误原因开始排查。

    1. 检查 PHP 文件中的额外空白

    导致此错误的最常见原因之一是 WordPress 文件中的额外空白。这些空白可能出现在 PHP 文件<?php 开头标签之前 ?> 结束标签之后。即使是一个空行,也有可能引发问题。

    解决方法:

    1. 用 FTP 客户端或主机控制面板中的文件管理工具访问网站文件。

    2. 找到 wp-config.php 文件,这是最常见可能出现额外空白的文件之一。

    图片[3]-如何修复WordPress“由于意外输出导致Cookie被阻止”的错误(详细指南)

    3. 打开文件,确保:

    • 文件开头的 <?php 标签之前没有空行或空格。
    • 文件结尾没有多余的 ?> 标签或其后空行。

    4. 保存修改,并刷新网站查看问题是否解决。

      如果问题仍未解决

      如果问题依然存在,则需要对其他常被编辑的 WordPress 文件重复上述步骤。例如,如果最近编辑或更新了 WordPress 主题,可以检查主题的 functions.php 文件

      清理 PHP 代码前的空白通常可以解决问题。

      然而,一个 WordPress 网站包含数百个 PHP 文件,其中许多位于插件和主题中,逐一检查和清理它们是不现实的。

      接下来判断是否是插件或主题导致了这个错误。

      2. 暂时停用所有插件

      有时候,插件冲突会在 WordPress 中导致意外输出,从而引发“由于意外输出导致 Cookie 被阻止”的错误。暂时停用所有插件是检查问题是否由插件引起的最快速的方法。

      如果可以访问仪表盘

      1. 转到 插件 » 已安装插件 页面。

      2. 选中所有插件,从批量操作下拉菜单中选择“停用”,然后点击“应用”。

      图片[4]-如何修复WordPress“由于意外输出导致Cookie被阻止”的错误(详细指南)

      3. 停用所有插件后,尝试登录或刷新页面,检查错误是否已解决。

        如果无法访问 WordPress 管理后台:

        1. 用 FTP 客户端或主机控制面板的文件管理工具连接到 WordPress 网站。

        2. 导航到 wp-content 文件夹。

        图片[5]-如何修复WordPress“由于意外输出导致Cookie被阻止”的错误(详细指南)

        3. 找到名为 plugins 的文件夹,右键点击并选择“重命名”选项。

        4. 将文件夹名称更改为任意名称,例如 plugins.deactivated

          WordPress 会查找名为 plugins 的文件夹来加载已激活的插件。如果找不到这个文件夹,它将无法激活任何插件,并会自动将所有插件设置为停用。

          检查问题:

          • 如果错误在停用所有插件后消失,则说明问题由某个插件引起。
          • 逐个重新激活插件,找出触发错误的插件。
          • 确认问题插件后,可以找功能类似的插件替换。

          3. 切换到默认的 WordPress 主题

          网站的 WordPress 主题也可能导致“由于意外输出导致 Cookie 被阻止”的错误。主题冲突可能是由于过时的代码或自定义内容的意外输出引起的。

          步骤 1:切换到默认主题(通过后台操作)

          如果可以访问 WordPress 管理后台:

          • 转到 外观 » 主题 页面。
          • 切换默认主题(通常以年份命名,如 Twenty Twenty-Five 或 Twenty Twenty-Four)。
          图片[6]-如何修复WordPress“由于意外输出导致Cookie被阻止”的错误(详细指南)
          • 如果默认主题已安装,点击“激活”切换到该主题。
          • 如果没有安装默认主题,点击顶部的“添加新主题”按钮,搜索并安装默认主题。

            步骤 2:切换到默认主题(通过 FTP 或文件管理器操作)

            1. 如果无法访问 WordPress 管理后台:

            • 使用 FTP 客户端或主机文件管理工具连接到网站。
            • 导航到 /wp-content/ 文件夹。
            • 找到 themes 文件夹,右键选择“重命名”,将其更名为 themes-deactivated
            图片[7]-如何修复WordPress“由于意外输出导致Cookie被阻止”的错误(详细指南)
            • 右键选择 FTP 客户端的“新建文件夹”选项,命名为 themes,创建一个新的空文件夹。
            图片[8]-如何修复WordPress“由于意外输出导致Cookie被阻止”的错误(详细指南)

            2. 下载并上传默认主题:

            图片[9]-如何修复WordPress“由于意外输出导致Cookie被阻止”的错误(详细指南)
            • 解压下载的主题 ZIP 文件,得到主题文件夹。
            图片[10]-如何修复WordPress“由于意外输出导致Cookie被阻止”的错误(详细指南)
            • 使用 FTP 或文件管理工具,将解压后的主题文件夹上传到你的网站的 themes 文件夹中。

            3. WordPress 会自动使用 themes 文件夹中唯一的主题作为默认主题。

            图片[11]-如何修复WordPress“由于意外输出导致Cookie被阻止”的错误(详细指南)

              检查结果

              • 如果切换到默认主题后错误消失,则说明问题出在之前的主题上。
              • 可以检查主题更新、修复主题代码,或者换一个主题。

              4. 使用 WP_DEBUG 模式进行调试

              如果问题仍然存在,可以启用 WordPress 的调试模式来帮助识别错误的具体原因。

              什么是 WP_DEBUG 模式?

              WP_DEBUG 模式是 WordPress 的内置功能,它可以记录错误和警告,帮助你找到导致意外输出的根源。

              如何启用 WP_DEBUG 模式

              1. 用 FTP 客户端或主机控制面板中的文件管理工具,访问网站的 WordPress 文件。

              2. 找到根目录中的 wp-config.php 文件,并打开进行编辑。

              3. 找到以下代码行:

                /* That’s all, stop editing! Happy publishing. */

                在这行代码的上方添加以下代码:

                define( 'WP_DEBUG', true );
                define( 'WP_DEBUG_LOG', true );
                define( 'WP_DEBUG_DISPLAY', false );
                • 第一行启用调试模式。
                • 第二行创建一个日志文件以存储错误信息。
                • 第三行防止错误信息显示在网站页面上。

                保存文件更改。

                检查调试日志

                1. 保存更改后,WordPress 会在 /wp-content/ 文件夹中生成一个名为 debug.log 的日志文件。
                2. 打开该文件,查看记录的错误和警告信息。
                图片[12]-如何修复WordPress“由于意外输出导致Cookie被阻止”的错误(详细指南)

                禁用 WP_DEBUG 模式

                1. 找到 WP_DEBUG 的定义,将其值设置为 false,如下所示:

                  define( 'WP_DEBUG', false );

                  2. 禁用调试模式可以防止敏感信息暴露。

                  如果已尝试上面所有步骤但错误仍然没有解决,那么联系专业的WordPress故障修复团队解决。


                  联系我们
                  文章看不懂?联系我们为您免费解答!免费助力个人,小企站点!
                  电话:020-2206-9892
                  QQ咨询:1025174874
                  邮件:info@361sale.com
                  工作时间:周一至周五,9:30-18:30,节假日休息
                  © 转载声明
                  本文作者:Banner1
                  THE END
                  喜欢就支持一下吧
                  点赞13 分享
                  评论 抢沙发

                  请登录后发表评论

                    暂无评论内容