如果检测到查询字符串,我想更新/设置cookie,以便将特定目录用于该浏览器会话或直到再次显式设置查询字符串。访问者不会看到目录,而只会看到http://mydomain.com/
。
这是我到目前为止所做的,但它没有按预期工作。很确定我写错了逻辑,但不确定在哪里。
RewriteCond %{QUERY_STRING} splittest=(A|B)
RewriteRule splittest=(A|B) [CO=splittest:$1:%{HTTP_HOST}:0:/,L]
RewriteCond %{QUERY_STRING} splittest=A [OR]
RewriteCond %{HTTP_COOKIE} splittest=A
# Split test A
RewriteRule ^(.*)$ A/$1 [L]
# Split test B
RewriteRule ^(.*)$ B/$1 [L]
答案 0 :(得分:2)
试试这个。我假设您的.htaccess
位于网络根目录/
。
RewriteEngine on
RewriteBase /
RewriteCond %{QUERY_STRING} splittest=A [NC]
RewriteRule ^ - [CO=splittest:A:%{HTTP_HOST}:0:/]
RewriteCond %{QUERY_STRING} splittest=B [NC]
RewriteRule ^ - [CO=splittest:B:%{HTTP_HOST}:0:/]
RewriteCond %{QUERY_STRING} splittest=A [NC,OR]
RewriteCond %{HTTP_COOKIE} splittest=A [NC]
# Split test A
RewriteRule ^(.*)$ A/$1 [L]
# Split test B
RewriteRule ^(.*)$ B/$1 [L]