我有一个拥有wp引擎工作的网站。我在wp引擎中添加了php session_start(),并且工作正常。但是我的生活不工作与php session_start();。实时站点创建的会话,但重定向其会话后为空白,可能会话已被破坏。但是在实时站点和暂存站点中使用相同的功能,那么为什么不在实时站点中工作会话呢?我在这个论坛上有很多答案,我也正在实现此代码,但是没有用。我该如何解决这个问题?
add_action('init', 'myStartSession', 1);
add_action('wp_logout', 'myEndSession');
add_action('wp_login', 'myEndSession');
function myStartSession() {
if(!session_id()) {
session_start();
}
}
function myEndSession() {
session_destroy ();
}
答案 0 :(得分:0)
假设您的实时站点也在WP Engine中,不幸的是,由于其特定的缓存设置,该站点不支持PHP会话。您可以在这里了解更多信息-https://wpengine.com/support/cookies-and-php-sessions/。在您的登台环境中,可能会禁用WP Engine缓存,这就是PHP会话正常工作的原因。
解决方案::您需要切换到PHP Cookie(或禁用WP Engine缓存)。