站点运行状况:检测到活动的PHP会话

时间:2020-11-01 作者:Loraga

我是WordPress开发的新手,我刚刚创建了我的第一个主题。

在我的wp admin中"Site Health" 告诉我已检测到PHP会话(严重错误),下面是消息:

PHP会话是通过session\\u start()函数调用创建的。这会干扰REST API和环回请求。在发出任何HTTP请求之前,会话应该由session\\u write\\u close()关闭。

我需要PHP的$_SESSION 对于主题脚本,我将其添加到我的函数中。要正确初始化会话的php文件:

<?php

if (!session_id()) { 
    session_start(); 
}
如果我删除这些行,消息就会消失,但我的PHP会话不再工作。

如果我遵守这些规定,一切似乎都正常,但这条信息令人担忧。。。

有没有人有办法解决这个问题,同时保持使用$_SESSION?

我的WP版本是5.5.3 PHP版本是7.4.8.

提前感谢您的帮助!

4 个回复
SO网友:shiv

我也面临同样的问题。

我替换了代码

session_start();
使用

if (!isset($_SESSION)) {
  session_start([\'read_and_close\' => true]);
}
这对我很有用。

SO网友:Francesco Mantovani

在我的例子中,这是由插件“导致的”;BestWebSoft的联系方式;。

如果你发现自己处于同样的情况,你必须逐个禁用插件并刷新页面/wp-admin/site-health.php 检查错误是否仍然存在。

如此处所述https://stackoverflow.com/questions/64377032/getting-an-active-php-session-was-detected-critical-warning-in-wordpress 这是由于插件开发不好造成的。

SO网友:Steve Humphrey

我发现WP e-Store导致:

检测到活动的PHP会话REST API遇到错误WP SpamShield原因:

检测到一个活动的PHP会话,我将查看代码,看看是否能在这些插件中找到修复它的方法。如果没有e-Store,这个网站基本上就完蛋了!

如果有人发现并修复了这两个插件中的任何一个,我很想知道是什么起到了作用。

[email protected]

SO网友:Lee

我也有同样的问题。在多次尝试挂接呼叫后session_start() 在Wordpress加载过程的其他地方,一位同事建议我尝试在函数中替换代码。php具有以下功能:

if(session_status() == PHP_SESSION_NONE) {
    session_start();
}
这似乎解决了我遇到的两个问题,清除了Wordpress中的错误,并允许我的前端用户登录到我创建的系统。

相关推荐

在我唯一的http://页面上,我收到了一个可插拔的.php警告信号

我最近刚刚使用http共享了一个指向我的站点的链接到我的站点:http://thechronicalist.com 但我没有重定向,而是显示以下内容:警告:无法修改标题信息-标题已由/home/thecmltm/public\\u html/index.php:1中的/home/thecmltm/public\\u html/wp includes/plugable发送。php在线1281警告:无法修改标题信息-标题已由/home/thecmltm/public\\u html/index.php:1中的