如果 cookie 不存在则写入条件不起作用

如果 cookie 不存在则写入条件不起作用

参考:如果不存在 cookie,则阻止站点的正确方法 apache 2.4

我们按照答案操作了,但没有效果。

当 cookie 不存在(或包含正确信息)时,我们希望重定向到另一个页面。

我们尝试过这样的做法:

RewriteEngine on
RewriteCond %{REMOTE_ADDR} !^123\.123\.123\.123
RewriteRule .* - [R=503,L]

以上内容作为负面条件。

我们尝试了这些示例(我们必须更改 URL 才能发布问题):

RewriteCond %{HTTP_COOKIE} !abc_f8Dple7LxGXcSUgHjFrx
RewriteRule .* www.example.co.uk/no-access [R=301,L]

RewriteCond %{HTTP_COOKIE} !^abc_f8Dple7LxGXcSUgHjFrx=([^;]+)
RewriteRule .* www.example.co.uk/no-access [R=301,L]

RewriteCond %{HTTP_COOKIE} !^abc_f8Dple7LxGXcSUgHjFrx
RewriteRule .* www.example.co.uk/no-access [R=301,L]

RewriteCond %{HTTP_COOKIE} !abc_f8Dple7LxGXcSUgHjFrx=([^;]+)
RewriteRule .* www.example.co.uk/no-access [R=301,L]

这些都不起作用。如果我们删除 ! 符号(使其成为肯定条件),它们就会起作用。

有人可以帮忙吗?

我们希望让它在 Apache 2.2 和 2.4 上运行,因为我们无法让它在两个版本上运行。

相关内容