启用LiteSpeed Cache插件后出现Login Vary Cookie冲突的解决办法

in WordPress插件 with 0 comment

启用LiteSpeed Cache插件后出现Login Vary Cookie冲突的解决办法

有的小伙伴在WordPress网站启用LiteSpeed Cache插件后,发现同站点下的不同登陆程序出现cookie错误,比如出现Login Vary Cookie冲突,这个应该如何解决呢?毕竟网上资料比较少,可以根据如下解决办法进行解决。

当你在同一个文档根目录下有多个启用了LSCache插件的网络应用程序时,其中一个程序是从另一个程序的子目录下提供的(如www.example.com/ 和 www.example.com/app2/),就会出现登录变量Cookie冲突。这种情况可能发生在不同的网络应用程序中,或者同一程序的多个安装程序中(如WordPress的两个副本)。

特别值得关注的是_lscache_vary cookie,它是每个LSCache插件的默认值,用于显示用户的登录状态。因此,它可以控制一个页面的版本(已登录或未登录)的提供。

让我们看一下这样的情况:WordPress的博客在www.example.com/,XenForo的论坛在www.example.com/forum/。就浏览器而言,博客和论坛都是同一个网站,因为论坛实际上是博客的一个子目录。当浏览器访问这些地址中的任何一个时,它就会使用www.example.com/ 的cookies。

尽管论坛是一个完全独立的应用程序,但在浏览器看来,它只是像博客的一个部分。

下面是这种情况的表现。

在前面的例子中,为了区分登录到WordPress的用户和登录到XenForo的用户,你需要改变登录不同cookie的名称。同一根目录下的每个应用程序都需要一个唯一命名的cookie。您可以手动修改.htaccess来解决这个问题,或者对于我们的一些插件,您可以通过插件接口。

手动修改.htaccess

对于每个应用程序,在应用程序根目录下的.htaccess文件中,在RewriteBase之后和所有使用[L]标志的规则之前,添加以下重写规则。

_my_custom_vary 是现在将由该应用程序使用的cookie名称。

在前面的情况下,你可以在WordPress中放入这样的 .htaccess文件:

在XenForo .htaccess文件中要这样做:

在插件中进行修改

WordPress插件有一个登录Cookie的设置,所以你可以在插件界面上修改Cookie,避免乱用.htaccess。导航到WordPress仪表板 > LiteSpeed Cache > Cache > Advanced来更新它。

购买/下载遇到问题?可联系
闲鱼名称:三点水帅哥
客服邮箱:382813125@qq.com
安装、使用问题,请先查看:技术支持说明

Responses