regex - htaccess 比较 cookie 值并在评估返回 true/false 时重定向

标签 regex apache .htaccess mod-rewrite cookies

我希望有人帮助我在 htaccess 中使用 if-else 语句。我想要的是 htaccess 读取 cookie 并检查其值是否等于定义的值。如果它评估为假,它应该执行重定向并阻止访问请求的文件夹。如果评估返回 false,也许所有人都拒绝会更好。

我知道以下代码检查是否设置了命名 cookie 值。如果没有设置,就会执行下面的重写规则。但是我如何调整这条线以检查它是否等于某个值?

RewriteEngine On
RewriteCond %{HTTP_COOKIE} !^.*cookie_name.*$ [NC]
RewriteRule .* http://www.google.com [NC,L]

我想要什么,但在 .htaccess 风格:
if ($_COOKIE['cookie_name'] != 'specific_value'){
//rewrite_rule or deny from all.
}

最佳答案

你很接近。 cookie 字符串需要一个 = :

RewriteEngine On
RewriteCond %{HTTP_COOKIE} !cookie_name=specific_value; [NC]
RewriteRule ^ http://www.google.com [NC,L]

关于regex - htaccess 比较 cookie 值并在评估返回 true/false 时重定向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19382160/

相关文章:

php - .htaccess:此处不允许的选项 cwp

wordpress - 从位于别处的目录访问特定的 Laravel 5 路由

regex - 使用正则表达式在第一个空格/冒号上拆分/分隔字符串

regex - VBA:Regex 和 Dir() 函数问题

c# - 如何在 C# 中使用 Regex 复制 FileSystemWatcher 过滤器功能

asp.net - 如何使用 Mono 运行 ASP.NET Web 应用程序?

javascript - 如何在 JavaScript 中匹配整个单词?

xml - XSLT-FO for 每个

ruby-on-rails - 乘客安装失败。内存太低?

ajax - 如何以编程方式访问受密码保护的网站?