gpt4 book ai didi

.htaccess - htaccess 中的变量,RewriteRule 问题

转载 作者:行者123 更新时间:2023-12-05 08:02:46 24 4
gpt4 key购买 nike

我如何使用 RewriteRule 访问变量?

如果我有:

SetEnv MY_VAR (a|b|c)

RewriteRule ^%{ENV:MY_VAR}$ index.php?s=$1 [L,QSA]

RewriteRule ^%{ENV:MY_VAR}-some-one$ index.php?s=$1 [L,QSA]

我有这些示例,但不起作用。

稍后编辑

好的,蒂姆,谢谢你的回答。假设我有:

RewriteRule ^(skoda|bmw|mercedes)-([0-9]+)-([0-9]+)-some-think$ index.php?a=$1 [L,QSA]

RewriteRule ^some-one-(skoda|bmw|mercedes)/pag-([0-9]+)$ index.php?a=$1 [L,QSA]

RewriteRule ^a-z-(skoda|bmw|mercedes)$ index.php?a=$1 [L,QSA]

(忘记 RewriteRule 的第二部分).. 我不想把这个列表放在任何地方(skoda|bmw|mercedes)。创建变量然后在规则中使用它更快......

最佳答案

你不能这样做,因为 mod_rewrite 不会在正则表达式子句中扩展变量。

您只能在 RewriteCond 的输入参数中使用变量,并作为 RewriteRule 的结果参数。编译正则表达式会产生开销(特别是如果您被迫像使用 .htaccess 文件一样按请求执行此操作),因此如果您允许其中包含可变内容,则必须重新编译它们对于每次比较,以牺牲性能为代价确保准确性。因此,解决方案似乎是不让您这样做。

无论如何,你到底想做什么?

关于.htaccess - htaccess 中的变量,RewriteRule 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3203058/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com