htaccess时间条件规则无法正常运行

时间:2019-10-15 15:26:30

标签: .htaccess ab-testing

我们正在尝试基于以下要点在首页上使用htaccess进行a / b测试的概念验证:

我们已经修改了代码,使其仅以首页为目标,并且成功了一半,这意味着它将仅使用第一个条件而忽略第二个条件。我不是htaccess规则的100%专家,而且过去几天我已经仔细研究了这个问题,以找出问题所在,但我觉得我正在向黑暗中的目标射击。

# ############################### #
#        A/B TESTING (START)      #
# ############################### #

# (1) Check if our cookie is already set.
#     If so, redirect to the previously-viewed page.

RewriteCond %{HTTP_COOKIE} ab_test_vers=([^;]+)
RewriteRule ^/$ HTTPS://example.com/%1/$1 [cookie=ab_test_vers_match:true:example.com,L]

# (2) If no cookie is set (new visitor)
#     AND the current time is on the first half of the minute
#     Rewrite to /test-option-a AND set our cookie

RewriteCond   %{HTTP_COOKIE} !ab_test_vers=([^;]+)
RewriteCond   %{TIME_SEC} <30
RewriteRule   ^/$ /even/$1 [cookie=ab_test_vers:even:example.com,L]
RedirectMatch 302 ^/$    HTTPS://example.com/welcome/

# (3) If no cookie is set (new visitor)
#     AND the current time is on the second half of the minute
#     Rewrite to /test-option-a AND set our cookie

RewriteCond   %{HTTP_COOKIE} !ab_test_vers=([^;]+)
RewriteCond   %{TIME_SEC} >29
RewriteRule   ^/$ /odd/$1 [cookie=ab_test_vers:odd:example.com,L]
RedirectMatch 302 ^/$    HTTPS://example.com/about/

# ############################### #
#        A/B TESTING (END)        #
# ############################### #

应该发生的是,根据访问者访问该网站首页的时间,他们会自动重定向到两个页面之一,在这种情况下,用于概念验证的页面为/ welcome& /关于。实际情况是,它们仅被重定向到/ welcome,而第二条规则被完全忽略了。

0 个答案:

没有答案