在 .htaccess 中为 LiteSpeed 缓存获取 PHP $_SESSION 数据

德米特罗·赫兹

我需要将数据从$_SESSIONPHP 文件发送到 .htaccess 以设置 Vary 变量以设置 LiteSpeed 缓存。

PHP 脚本示例:

<?php $lang = $_SESSION['lang'];?>

.htaccess 示例

...
<IfModule LiteSpeed>
CacheLookup public on
CacheLookup private on
RewriteRule .* - [E=cache-control:max-age=604800]
RewriteRule .* - [E=cache-control:vary=**!!!HERE I NEED TO HAVE $lang value!!!**]
</IfModule>
...

我已经尝试过这些方法:

  1. 通过饼干。我在 cookie 中设置 PHP 变量,并通过 .htaccess 从那里获取它"RewriteCond %{HTTP_COOKIE} (.*) [NC]"但我也将拥有无法在 cookie 中设置的私人数据。所以这个方法不是很好。
  2. 通过 ENV 变量(putenv("PROVARY=".$_SESSION['lang']);)但它不起作用。因为他们在请求结束时死亡。
  3. HTTP_SESSION. 我找到了一个模块的这个名称,但没有找到有关它如何工作甚至如何使用它的信息。

是否可以$_SESSION直接从 .htaccess获取变量?如果是,请展示它如何工作的工作示例。

菲利普

仅基于会话变量缓存页面从来都不是一个好主意 - 特别是如果内容仅根据会话中存储的语言而变化。连 LiteSpeed 都说,不要这样做

但是,您可以将语言另外存储在 cookie 中,并根据 cookie 值变化

对于进一步的项目,我建议将语言存储在 uri ( example.com/en/..., example.com/de/...)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

PHP Session从数据库获取数据

来自分类Dev

PHP登录-从数据库获取用户数据还是存储在Session中?

来自分类Dev

htaccess从Apache迁移到LiteSpeed的问题

来自分类Dev

php Session PHP 获取用户相关数据

来自分类Dev

从hangfire添加ang获取缓存中的数据

来自分类Dev

从内存或缓存中获取指令数据的阶段

来自分类Dev

从htaccess中获取PHP中的掩码URL

来自分类Dev

htaccess规则后获取PHP中的参数

来自分类Dev

从php文件中为Angular作用域获取json数据

来自分类Dev

在Flutter中获取pHp数组或映射为JSON数据?

来自分类Dev

如何从数据透视表缓存中获取数据?

来自分类Dev

使用opcache在PHP中缓存静态数据

来自分类Dev

zend / php是否为执行数据中某处的功能缓存哈希码?

来自分类Dev

htaccess重写为干净的2获取变量的PHP

来自分类Dev

从类对象或从PHP中的$ _SESSION访问数据更好吗?

来自分类Dev

从PHP网页中获取数据

来自分类Dev

从php获取JavaScript中的数据

来自分类Dev

从PHP网页中获取数据

来自分类Dev

从PHP中的数组获取数据

来自分类Dev

在 PHP 中从 Backendless 获取数据

来自分类Dev

从php中的url获取数据

来自分类Dev

为php用户会话从mySql数据库中获取数据

来自分类Dev

PHP从数据库中获取数据

来自分类Dev

Angular Freshness策略也从缓存中获取数据

来自分类Dev

为什么我无法在Redis的事务中获取缓存数据?

来自分类Dev

使用`.htaccess` RewriteEngine规则时在php中获取值

来自分类Dev

使用`.htaccess` RewriteEngine规则时在php中获取值

来自分类Dev

php中的RegExp htaccess

来自分类Dev

php中的URL .htaccess